↑ Up

Lash---1.13.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Lash---1.13
% Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : lash -P picomus -M modes -p tstp -t %d %s

% Computer : n016.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 : Tue May  5 07:03:08 PM UTC 2026

% Result   : Theorem 12.06s 12.09s
% Output   : Proof 12.21s
% Verified : 
% SZS Type : ERROR: Analysing output (MakeTreeStats fails)

% Comments : 
%------------------------------------------------------------------------------
thf(ty_subst,type,
    subst: $tType ).

thf(ty_d_subst,type,
    d_subst: $tType ).

thf(ty_d_term,type,
    d_term: $tType ).

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

thf(ty_induction2lem,type,
    induction2lem: $o ).

thf(ty_pushprop_lem1v2_lthm,type,
    pushprop_lem1v2_lthm: $o ).

thf(ty_hoasapinj2_gthm,type,
    hoasapinj2_gthm: $o ).

thf(ty_apnotvar,type,
    apnotvar: $o ).

thf(ty_hoasinduction_lem3aaa,type,
    hoasinduction_lem3aaa: $o ).

thf(ty_id,type,
    id: subst ).

thf(ty_hoasinduction_lem1_lthm,type,
    hoasinduction_lem1_lthm: $o ).

thf(ty_hoasinduction_lem2,type,
    hoasinduction_lem2: $o ).

thf(ty_pushprop_lthm,type,
    pushprop_lthm: $o ).

thf(ty_axabs,type,
    axabs: $o ).

thf(ty_hoasinduction,type,
    hoasinduction: $o ).

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

thf(ty_hoaslamnotap_lthm,type,
    hoaslamnotap_lthm: $o ).

thf(ty_eigen__159,type,
    eigen__159: term ).

thf(ty_axidl,type,
    axidl: $o ).

thf(ty_pushprop_lem1_lthm,type,
    pushprop_lem1_lthm: $o ).

thf(ty_hoasinduction_lem0_lthm,type,
    hoasinduction_lem0_lthm: $o ).

thf(ty_hoasinduction_lem1,type,
    hoasinduction_lem1: $o ).

thf(ty_hoaslaminj_gthm,type,
    hoaslaminj_gthm: $o ).

thf(ty_pushprop_lem0_lthm,type,
    pushprop_lem0_lthm: $o ).

thf(ty_hoasinduction_no_psi_cond_lthm,type,
    hoasinduction_no_psi_cond_lthm: $o ).

thf(ty_hoasinduction_lem3aa_lthm,type,
    hoasinduction_lem3aa_lthm: $o ).

thf(ty_axassoc,type,
    axassoc: $o ).

thf(ty_hoaslaminj_lthm,type,
    hoaslaminj_lthm: $o ).

thf(ty_hoasinduction_lem2_gthm,type,
    hoasinduction_lem2_gthm: $o ).

thf(ty_pushprop_lem2v2_gthm,type,
    pushprop_lem2v2_gthm: $o ).

thf(ty_pushprop,type,
    pushprop: $o ).

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

thf(ty_hoaslamnotvar,type,
    hoaslamnotvar: $o ).

thf(ty_hoasapnotvar_lthm,type,
    hoasapnotvar_lthm: $o ).

thf(ty_hoasapnotvar,type,
    hoasapnotvar: $o ).

thf(ty_hoasinduction_gthm,type,
    hoasinduction_gthm: $o ).

thf(ty_axvarcons,type,
    axvarcons: $o ).

thf(ty_hoasinduction_lem2v2,type,
    hoasinduction_lem2v2: $o ).

thf(ty_hoasinduction_lem3v2_gthm,type,
    hoasinduction_lem3v2_gthm: $o ).

thf(ty_induction,type,
    induction: $o ).

thf(ty_axvarshift,type,
    axvarshift: $o ).

thf(ty_hoasapinj1_lthm,type,
    hoasapinj1_lthm: $o ).

thf(ty_d2term,type,
    d2term: d_term > term ).

thf(ty_axapp,type,
    axapp: $o ).

thf(ty_eigen__136,type,
    eigen__136: term ).

thf(ty_axscons,type,
    axscons: $o ).

thf(ty_axvarid,type,
    axvarid: $o ).

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

thf(ty_hoaslaminj,type,
    hoaslaminj: $o ).

thf(ty_induction2,type,
    induction2: $o ).

thf(ty_hoaslamnotap_gthm,type,
    hoaslamnotap_gthm: $o ).

thf(ty_hoasinduction_lem3v2a_lthm,type,
    hoasinduction_lem3v2a_lthm: $o ).

thf(ty_eigen__147,type,
    eigen__147: term > $o ).

thf(ty_eigen__125,type,
    eigen__125: term ).

thf(ty_pushprop_lem3v2,type,
    pushprop_lem3v2: $o ).

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

thf(ty_hoasinduction_lem3,type,
    hoasinduction_lem3: $o ).

thf(ty_pushprop_lem2v2,type,
    pushprop_lem2v2: $o ).

thf(ty_eigen__158,type,
    eigen__158: subst > term > subst > $o ).

thf(ty_induction2lem_lthm,type,
    induction2lem_lthm: $o ).

thf(ty_eigen__169,type,
    eigen__169: term ).

thf(ty_hoasinduction_lem3v2,type,
    hoasinduction_lem3v2: $o ).

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

thf(ty_hoaslamnotvar_gthm,type,
    hoaslamnotvar_gthm: $o ).

thf(ty_hoasinduction_lem3b_gthm,type,
    hoasinduction_lem3b_gthm: $o ).

thf(ty_substmonoid_gthm,type,
    substmonoid_gthm: $o ).

thf(ty_termmset_gthm,type,
    termmset_gthm: $o ).

thf(ty_axshiftcons,type,
    axshiftcons: $o ).

thf(ty_eigen__1,type,
    eigen__1: term > $o ).

thf(ty_apinj2,type,
    apinj2: $o ).

thf(ty_termmset_lthm,type,
    termmset_lthm: $o ).

thf(ty_hoasinduction_lem1v2,type,
    hoasinduction_lem1v2: $o ).

thf(ty_hoasapinj1_gthm,type,
    hoasapinj1_gthm: $o ).

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

thf(ty_hoasinduction_lthm,type,
    hoasinduction_lthm: $o ).

thf(ty_hoasinduction_lem3b_lthm,type,
    hoasinduction_lem3b_lthm: $o ).

thf(ty_pushprop_lem2v2_lthm,type,
    pushprop_lem2v2_lthm: $o ).

thf(ty_eigen__148,type,
    eigen__148: term ).

thf(ty_pushprop_lem1_gthm,type,
    pushprop_lem1_gthm: $o ).

thf(ty_axclos,type,
    axclos: $o ).

thf(ty_eigen__4,type,
    eigen__4: term ).

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

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

thf(ty_ulamvar1,type,
    ulamvar1: $o ).

thf(ty_hoasinduction_lem3_gthm,type,
    hoasinduction_lem3_gthm: $o ).

thf(ty_hoasinduction_no_psi_cond,type,
    hoasinduction_no_psi_cond: $o ).

thf(ty_hoasinduction_lem3b,type,
    hoasinduction_lem3b: $o ).

thf(ty_hoasinduction_lem2_lthm,type,
    hoasinduction_lem2_lthm: $o ).

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

thf(ty_pushprop_lem1v2_gthm,type,
    pushprop_lem1v2_gthm: $o ).

thf(ty_apinj1,type,
    apinj1: $o ).

thf(ty_eigen__114,type,
    eigen__114: subst > term > subst > $o ).

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

thf(ty_induction2lem_gthm,type,
    induction2lem_gthm: $o ).

thf(ty_hoasinduction_lem2v2_gthm,type,
    hoasinduction_lem2v2_gthm: $o ).

thf(ty_hoasinduction_lem3v2_f,type,
    hoasinduction_lem3v2_f: $o ).

thf(ty_induction2_lthm,type,
    induction2_lthm: $o ).

thf(ty_hoaslamnotap,type,
    hoaslamnotap: $o ).

thf(ty_shinj,type,
    shinj: $o ).

thf(ty_hoasapnotvar_gthm,type,
    hoasapnotvar_gthm: $o ).

thf(ty_one,type,
    one: term ).

thf(ty_eigen__3,type,
    eigen__3: subst ).

thf(ty_hoasinduction_lem3v2a,type,
    hoasinduction_lem3v2a: $o ).

thf(ty_hoasapinj2,type,
    hoasapinj2: $o ).

thf(ty_axidr,type,
    axidr: $o ).

thf(ty_d2subst,type,
    d2subst: d_subst > subst ).

thf(ty_pushprop_lem0,type,
    pushprop_lem0: $o ).

thf(ty_termmset,type,
    termmset: $o ).

thf(ty_hoasinduction_lthm_3,type,
    hoasinduction_lthm_3: $o ).

thf(ty_pushprop_lem1,type,
    pushprop_lem1: $o ).

thf(ty_hoasinduction_lem0,type,
    hoasinduction_lem0: $o ).

thf(ty_hoasinduction_lem3a_lthm,type,
    hoasinduction_lem3a_lthm: $o ).

thf(ty_substmonoid_lthm,type,
    substmonoid_lthm: $o ).

thf(ty_eigen__115,type,
    eigen__115: term ).

thf(ty_sh,type,
    sh: subst ).

thf(ty_hoasapinj2_lthm,type,
    hoasapinj2_lthm: $o ).

thf(ty_substmonoid,type,
    substmonoid: $o ).

thf(ty_pushprop_lem1v2,type,
    pushprop_lem1v2: $o ).

thf(ty_hoasinduction_lem3v2_f_lthm,type,
    hoasinduction_lem3v2_f_lthm: $o ).

thf(ty_hoasinduction_lem3v2_lthm,type,
    hoasinduction_lem3v2_lthm: $o ).

thf(ty_hoasinduction_lem3aa,type,
    hoasinduction_lem3aa: $o ).

thf(ty_laminj,type,
    laminj: $o ).

thf(ty_lamnotap,type,
    lamnotap: $o ).

thf(ty_eigen__2,type,
    eigen__2: term ).

thf(ty_pushprop_lem0_gthm,type,
    pushprop_lem0_gthm: $o ).

thf(ty_pushprop_gthm,type,
    pushprop_gthm: $o ).

thf(ty_eigen__146,type,
    eigen__146: subst > term > subst > $o ).

thf(ty_eigen__135,type,
    eigen__135: subst > term > subst > $o ).

thf(ty_axmap,type,
    axmap: $o ).

thf(ty_ulamvarsh,type,
    ulamvarsh: $o ).

thf(ty_lamnotvar,type,
    lamnotvar: $o ).

thf(ty_induction2_gthm,type,
    induction2_gthm: $o ).

thf(ty_pushprop_lthm_orig,type,
    pushprop_lthm_orig: $o ).

thf(ty_hoasinduction_lem3a_gthm,type,
    hoasinduction_lem3a_gthm: $o ).

thf(ty_hoasinduction_lem3a,type,
    hoasinduction_lem3a: $o ).

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

thf(ty_hoaslamnotvar_lthm,type,
    hoaslamnotvar_lthm: $o ).

thf(ty_ulamvarind,type,
    ulamvarind: $o ).

thf(ty_hoasapinj1,type,
    hoasapinj1: $o ).

thf(ty_d_id,type,
    d_id: d_subst ).

thf(ty_hoasinduction_lem1_gthm,type,
    hoasinduction_lem1_gthm: $o ).

thf(ty_pushprop_lem3v2_lthm,type,
    pushprop_lem3v2_lthm: $o ).

thf(ty_hoasinduction_lem3_lthm,type,
    hoasinduction_lem3_lthm: $o ).

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

thf(ty_d_one,type,
    d_one: d_term ).

thf(ty_hoasinduction_lem1v2_gthm,type,
    hoasinduction_lem1v2_gthm: $o ).

thf(sP1,plain,
    ( sP1
  <=> ! [X1: term] :
        ( ( var @ X1 )
       => ( eigen__1 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP1])]) ).

thf(sP2,plain,
    ( sP2
  <=> ( ( pushprop_p_and_p_prime @ eigen__2 @ eigen__3 )
      = ( ^ [X1: term > $o,X2: term > $o] :
          ! [X3: term] :
            ( ( X2 @ X3 )
            = ( X1 @ ( sub @ X3 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP2])]) ).

thf(sP3,plain,
    ( sP3
  <=> ! [X1: subst] :
        ( ( pushprop_p_and_p_prime @ eigen__2 @ X1 )
        = ( ^ [X2: term > $o,X3: term > $o] :
            ! [X4: term] :
              ( ( X3 @ X4 )
              = ( X2 @ ( sub @ X4 @ ( push @ eigen__2 @ X1 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP3])]) ).

thf(sP4,plain,
    ( sP4
  <=> ! [X1: subst] :
        ( X1
        = ( comp @ id @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP4])]) ).

thf(sP5,plain,
    ( sP5
  <=> ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( pushprop_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: term,X2: subst,X3: term > $o,X4: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                      ( ( X4 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( X3 @ ( sub @ X5 @ ( push @ X1 @ X2 ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                                                        = ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( X2 @ one ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f
                                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                      ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                                      = ( X2 @ X4 @ X3 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                                             => ( hoasapinj2
                                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                          = ( comp @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm
                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                          ~ ! [X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                              = ( X2 @ X4 @ X3 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o] :
                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                  ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( termmset_lthm != ( ~ $false ) ) )
                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2_lthm
                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                 => ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                                                                                                                                                                                = ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( X2 @ one ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem0
                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o] :
                                                                                                                                                                                                                                                                                              ~ ! [X2: term > $o] :
                                                                                                                                                                                                                                                                                                  ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem3b_lthm
                                                                                                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                                                                                                      ~ ! [X2: subst > term > term] :
                                                                                                                                                                                                                                                                          ( ( X2 @ sh @ one )
                                                                                                                                                                                                                                                                         != ( sub @ X1 @ ( push @ one @ sh ) ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                                                                                                                     => ( induction
                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3aa
                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                                             => ~ axclos )
                                                                                                                                                                                                         => ~ axassoc )
                                                                                                                                                                                                     => ( hoasinduction_lem2v2
                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                 => ~ pushprop_lthm )
                                                                                                                                                                                             => ( apinj2
                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                                         => ( apinj1
                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                     => ( hoasapinj2_lthm
                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                             => ( X3 = X4 ) )
                                                                                                                                                                                         => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_lem3v2a
                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                                             => ( hoasapinj1_lthm
                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                      ( X1
                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                       => ( X1 = X2 ) )
                                                                                                                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                                         => ( hoaslaminj_lthm
                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                  ( X1
                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                    ( X2
                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                               => ( ! [X1: term,X2: term] :
                                                                                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                                                                                        = ( lam @ X2 ) )
                                                                                                                                                                                     => ( X1 = X2 ) )
                                                                                                                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                                                     => ( axvarcons
                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                              ( X1
                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                                                 => ( axscons
                                                                                                                                                                   != ( ! [X1: subst] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                                             => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                                         => ( axidr
                                                                                                                                                           != ( ! [X1: subst] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( comp @ X1 @ id ) ) ) ) )
                                                                                                                                                     => ( pushprop_lem1
                                                                                                                                                       != ( ! [X1: term > $o,X2: term > $o,X3: term,X4: subst,X5: term] :
                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X5 @ X4 ) ) ) ) ) ) )
                                                                                                                                                 => ( laminj
                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                                                            = ( lam @ X2 ) )
                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                             => ( hoasinduction_lem3_lthm
                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                         => ( pushprop_lem0
                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                  ~ ! [X4: term > $o] :
                                                                                                                                                      ~ ! [X5: term] :
                                                                                                                                                          ( ( X4 @ X5 )
                                                                                                                                                          = ( X1 @ ( sub @ X5 @ ( push @ X2 @ X3 ) ) ) ) ) ) )
                                                                                                                                     => ~ pushprop_gthm )
                                                                                                                                 => ~ axabs )
                                                                                                                             => ( hoasinduction_lem3v2a_lthm
                                                                                                                               != ( ! [X1: term] :
                                                                                                                                      ~ ! [X2: subst > term > term] :
                                                                                                                                          ~ ! [X3: term,X4: subst] :
                                                                                                                                              ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                                                                                                                                              = ( X2 @ X4 @ X3 ) )
                                                                                                                                 => ( ! [X1: term] :
                                                                                                                                        ( X1
                                                                                                                                        = ( sub @ X1 @ id ) )
                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                                         => ~ hoasinduction_lem2_lthm )
                                                                                                                     => ~ hoasapinj2_gthm )
                                                                                                                 => ~ hoasinduction_lem1_lthm )
                                                                                                             => lamnotap )
                                                                                                         => ~ hoasapinj1_gthm )
                                                                                                     => ~ hoaslamnotvar )
                                                                                                 => ( axidl != sP4 ) )
                                                                                             => ~ hoaslaminj_gthm )
                                                                                         => ( induction2_lthm
                                                                                           != ( ! [X1: term] :
                                                                                                  ( X1
                                                                                                  = ( sub @ X1 @ id ) )
                                                                                             => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ! [X5: term] :
                                                                                                                      ( ( X1 @ X5 )
                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( var @ X4 )
                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                                               => ! [X1: term > $o,X2: term] :
                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                ( ( var @ X3 )
                                                                                                               => ( X1 @ X3 ) )
                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                       => ~ ! [X3: term] :
                                                                                                              ( ! [X4: term] :
                                                                                                                  ( ( X1 @ X4 )
                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                   => ( X1 @ X2 ) ) ) ) ) )
                                                                                     => ( hoasinduction_lem0_lthm
                                                                                       != ( ! [X1: subst > term > subst > $o] :
                                                                                              ~ ! [X2: term > $o] :
                                                                                                  ~ ! [X3: term] :
                                                                                                      ( ( X2 @ X3 )
                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                 => ( substmonoid_lthm
                                                                                   != ( sP4
                                                                                     => ( ! [X1: subst] :
                                                                                            ( X1
                                                                                            = ( comp @ X1 @ id ) )
                                                                                       => ~ ( sP4
                                                                                           => ~ ! [X1: subst] :
                                                                                                  ( X1
                                                                                                  = ( comp @ X1 @ id ) ) ) ) ) ) )
                                                                             => ~ pushprop )
                                                                         => ~ hoasinduction_lem3_gthm )
                                                                     => ~ hoasinduction_lem2_gthm )
                                                                 => ( hoasinduction_lem3b
                                                                   != ( ! [X1: term] :
                                                                          ~ ! [X2: subst > term > term] :
                                                                              ( ( X2 @ sh @ one )
                                                                             != ( sub @ X1 @ ( push @ one @ sh ) ) ) ) ) )
                                                             => ( substmonoid
                                                               != ( ~ ( sP4
                                                                     => ~ ! [X1: subst] :
                                                                            ( X1
                                                                            = ( comp @ X1 @ id ) ) ) ) ) )
                                                         => ~ lamnotvar )
                                                     => ( hoasinduction_lem3a
                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                              ( ~ ( ! [X3: subst > term > term] :
                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ( X1 @ id @ X4 @ id )
                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( X1 @ id @ X3 @ id )
                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                 => ~ hoasinduction_lem1_gthm )
                                             => ( hoasinduction_no_psi_cond
                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ! [X3: term,X4: term] :
                                                              ( ~ ( ( X1 @ id @ X3 @ id )
                                                                 => ~ ( X1 @ id @ X4 @ id ) )
                                                             => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                         => ~ ! [X3: subst > term > term] :
                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X1 @ id @ X4 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                         => ~ induction2_gthm )
                                     => ~ pushprop_lem2v2_lthm )
                                 => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
                             => ( hoaslamnotap
                               != ( ! [X1: subst > term > term,X2: term,X3: term] :
                                      ( ! [X4: subst,X5: term,X6: subst] :
                                          ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                                          = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                       != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) )
                         => ~ substmonoid_gthm )
                     => ~ ulamvarsh )
                 => ( induction2
                   != ( ! [X1: term > $o,X2: term] :
                          ( ~ ( ~ ( ! [X3: term] :
                                      ( ( var @ X3 )
                                     => ( X1 @ X3 ) )
                                 => ~ ! [X3: term,X4: term] :
                                        ( ~ ( ( X1 @ X3 )
                                           => ~ ( X1 @ X4 ) )
                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                             => ~ ! [X3: term] :
                                    ( ! [X4: term] :
                                        ( ( X1 @ X4 )
                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                   => ( X1 @ ( lam @ X3 ) ) ) )
                         => ( X1 @ X2 ) ) ) ) )
             => ~ pushprop_lem3v2 )
         => ~ pushprop_lem2v2_gthm )
     => ( pushprop_lem1_lthm
       != ( ! [X1: term,X2: subst] :
              ( X1
              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
         => ( ! [X1: term,X2: subst] :
                ( X2
                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
           => ! [X1: term > $o,X2: term > $o,X3: term,X4: subst,X5: term] :
                ( ( X1 @ X3 )
               => ( X2 @ ( sub @ X3 @ ( push @ X5 @ X4 ) ) ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP5])]) ).

thf(sP6,plain,
    ( sP6
  <=> ( eigen__0 @ ( sub @ eigen__4 @ ( push @ eigen__2 @ eigen__3 ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP6])]) ).

thf(sP7,plain,
    ( sP7
  <=> ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ sP5
                         => ( hoasinduction_lem3v2
                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                             => ~ ! [X4: subst > term > term] :
                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                       => ~ ! [X5: term] :
                                                              ( ( X1 @ id @ X5 @ id )
                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                                         => ~ ! [X4: term] :
                                                ( ( X2 @ X4 )
                                                = ( X1 @ id @ X4 @ id ) ) )
                                     => ~ ! [X4: term] :
                                            ( ( X2 @ X4 )
                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                     => ( axshiftcons
                       != ( ! [X1: term,X2: subst] :
                              ( X2
                              = ( comp @ sh @ ( push @ X1 @ X2 ) ) ) ) ) )
                 => ( termmset
                   != ( ! [X1: term] :
                          ( X1
                          = ( sub @ X1 @ id ) ) ) ) )
             => ( pushprop_lem0_lthm
               != ( ! [X1: term > $o,X2: term,X3: subst] :
                      ~ ! [X4: term > $o] :
                          ~ ! [X5: term] :
                              ( ( X4 @ X5 )
                              = ( X1 @ ( sub @ X5 @ ( push @ X2 @ X3 ) ) ) ) ) ) )
         => ~ hoasapnotvar_lthm )
     => ( hoasinduction_lem3v2_lthm
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                         => ~ ! [X4: subst > term > term] :
                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                   => ~ ! [X5: term] :
                                          ( ( X1 @ id @ X5 @ id )
                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                            = ( X1 @ id @ X4 @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
             => ( X2 @ ( lam @ X3 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP7])]) ).

thf(sP8,plain,
    ( sP8
  <=> ! [X1: term > $o,X2: term,X3: subst,X4: term] :
        ( ( var @ X2 )
       => ( X1 @ ( sub @ X2 @ ( push @ X4 @ X3 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP8])]) ).

thf(sP9,plain,
    ( sP9
  <=> ! [X1: term] :
        ~ ! [X2: subst > term > term] :
            ( ( X2 @ sh @ one )
           != ( sub @ X1 @ ( push @ one @ sh ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP9])]) ).

thf(sP10,plain,
    ( sP10
  <=> ! [X1: subst > term > subst > $o] :
        ~ ! [X2: term > $o] :
            ~ ! [X3: term] :
                ( ( X2 @ X3 )
                = ( X1 @ id @ X3 @ id ) ) ),
    introduced(definition,[new_symbols(definition,[sP10])]) ).

thf(sP11,plain,
    ( sP11
  <=> ( sP4
     => ~ ! [X1: subst] :
            ( X1
            = ( comp @ X1 @ id ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP11])]) ).

thf(sP12,plain,
    ( sP12
  <=> ! [X1: term > $o,X2: term > $o,X3: term,X4: subst,X5: term] :
        ( ( X1 @ X3 )
       => ( X2 @ ( sub @ X3 @ ( push @ X5 @ X4 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP12])]) ).

thf(sP13,plain,
    ( sP13
  <=> ( ~ ( ~ sP5
         => ( hoasinduction_lem3v2
           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                             => ~ ! [X4: subst > term > term] :
                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                       => ~ ! [X5: term] :
                                              ( ( X1 @ id @ X5 @ id )
                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                         => ~ ! [X4: term] :
                                ( ( X2 @ X4 )
                                = ( X1 @ id @ X4 @ id ) ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
     => ( axshiftcons
       != ( ! [X1: term,X2: subst] :
              ( X2
              = ( comp @ sh @ ( push @ X1 @ X2 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP13])]) ).

thf(sP14,plain,
    ( sP14
  <=> ( ~ sP7
     => ( axvarid
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP14])]) ).

thf(sP15,plain,
    ( sP15
  <=> ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( pushprop_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: term,X2: subst,X3: term > $o,X4: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                                ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                  ( ( X4 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( X3 @ ( sub @ X5 @ ( push @ X1 @ X2 ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                                                    = ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( X2 @ one ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f
                                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                  ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                                  = ( X2 @ X4 @ X3 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                                         => ( hoasapinj2
                                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                      = ( comp @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm
                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                      ~ ! [X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                          = ( X2 @ X4 @ X3 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( termmset_lthm != ( ~ $false ) ) )
                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2_lthm
                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                             => ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                                                                                                                                                                                            = ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( X2 @ one ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                                                                                                                 => ( induction
                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa
                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                                         => ~ axclos )
                                                                                                                                                                                                     => ~ axassoc )
                                                                                                                                                                                                 => ( hoasinduction_lem2v2
                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                             => ~ pushprop_lthm )
                                                                                                                                                                                         => ( apinj2
                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                                     => ( apinj1
                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                 => ( hoasapinj2_lthm
                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                         => ( X3 = X4 ) )
                                                                                                                                                                                     => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                             => ( hoasinduction_lem3v2a
                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                                         => ( hoasapinj1_lthm
                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                  ( X1
                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                   => ( X1 = X2 ) )
                                                                                                                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                                     => ( hoaslaminj_lthm
                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                              ( X1
                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                ( X2
                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                           => ( ! [X1: term,X2: term] :
                                                                                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                                                                                    = ( lam @ X2 ) )
                                                                                                                                                                                 => ( X1 = X2 ) )
                                                                                                                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                                                 => ( axvarcons
                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                                             => ( axscons
                                                                                                                                                               != ( ! [X1: subst] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                                         => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                                     => ( axidr
                                                                                                                                                       != ( ! [X1: subst] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( comp @ X1 @ id ) ) ) ) )
                                                                                                                                                 => ( pushprop_lem1 != sP12 ) )
                                                                                                                                             => ( laminj
                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                                                        = ( lam @ X2 ) )
                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                         => ( hoasinduction_lem3_lthm
                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                     => ( pushprop_lem0
                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                              ~ ! [X4: term > $o] :
                                                                                                                                                  ~ ! [X5: term] :
                                                                                                                                                      ( ( X4 @ X5 )
                                                                                                                                                      = ( X1 @ ( sub @ X5 @ ( push @ X2 @ X3 ) ) ) ) ) ) )
                                                                                                                                 => ~ pushprop_gthm )
                                                                                                                             => ~ axabs )
                                                                                                                         => ( hoasinduction_lem3v2a_lthm
                                                                                                                           != ( ! [X1: term] :
                                                                                                                                  ~ ! [X2: subst > term > term] :
                                                                                                                                      ~ ! [X3: term,X4: subst] :
                                                                                                                                          ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                                                                                                                                          = ( X2 @ X4 @ X3 ) )
                                                                                                                             => ( ! [X1: term] :
                                                                                                                                    ( X1
                                                                                                                                    = ( sub @ X1 @ id ) )
                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                                     => ~ hoasinduction_lem2_lthm )
                                                                                                                 => ~ hoasapinj2_gthm )
                                                                                                             => ~ hoasinduction_lem1_lthm )
                                                                                                         => lamnotap )
                                                                                                     => ~ hoasapinj1_gthm )
                                                                                                 => ~ hoaslamnotvar )
                                                                                             => ( axidl != sP4 ) )
                                                                                         => ~ hoaslaminj_gthm )
                                                                                     => ( induction2_lthm
                                                                                       != ( ! [X1: term] :
                                                                                              ( X1
                                                                                              = ( sub @ X1 @ id ) )
                                                                                         => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ! [X5: term] :
                                                                                                                  ( ( X1 @ X5 )
                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( var @ X4 )
                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                                           => ! [X1: term > $o,X2: term] :
                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                            ( ( var @ X3 )
                                                                                                           => ( X1 @ X3 ) )
                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                   => ~ ! [X3: term] :
                                                                                                          ( ! [X4: term] :
                                                                                                              ( ( X1 @ X4 )
                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                               => ( X1 @ X2 ) ) ) ) ) )
                                                                                 => ( hoasinduction_lem0_lthm != sP10 ) )
                                                                             => ( substmonoid_lthm
                                                                               != ( sP4
                                                                                 => ( ! [X1: subst] :
                                                                                        ( X1
                                                                                        = ( comp @ X1 @ id ) )
                                                                                   => ~ sP11 ) ) ) )
                                                                         => ~ pushprop )
                                                                     => ~ hoasinduction_lem3_gthm )
                                                                 => ~ hoasinduction_lem2_gthm )
                                                             => ( hoasinduction_lem3b != sP9 ) )
                                                         => ( substmonoid != ( ~ sP11 ) ) )
                                                     => ~ lamnotvar )
                                                 => ( hoasinduction_lem3a
                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                          ( ~ ( ! [X3: subst > term > term] :
                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ( X1 @ id @ X4 @ id )
                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( X1 @ id @ X3 @ id )
                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                             => ~ hoasinduction_lem1_gthm )
                                         => ( hoasinduction_no_psi_cond
                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ! [X3: term,X4: term] :
                                                          ( ~ ( ( X1 @ id @ X3 @ id )
                                                             => ~ ( X1 @ id @ X4 @ id ) )
                                                         => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                     => ~ ! [X3: subst > term > term] :
                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X1 @ id @ X4 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                     => ~ induction2_gthm )
                                 => ~ pushprop_lem2v2_lthm )
                             => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
                         => ( hoaslamnotap
                           != ( ! [X1: subst > term > term,X2: term,X3: term] :
                                  ( ! [X4: subst,X5: term,X6: subst] :
                                      ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                                      = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                   != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) )
                     => ~ substmonoid_gthm )
                 => ~ ulamvarsh )
             => ( induction2
               != ( ! [X1: term > $o,X2: term] :
                      ( ~ ( ~ ( ! [X3: term] :
                                  ( ( var @ X3 )
                                 => ( X1 @ X3 ) )
                             => ~ ! [X3: term,X4: term] :
                                    ( ~ ( ( X1 @ X3 )
                                       => ~ ( X1 @ X4 ) )
                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ! [X4: term] :
                                    ( ( X1 @ X4 )
                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                               => ( X1 @ ( lam @ X3 ) ) ) )
                     => ( X1 @ X2 ) ) ) ) )
         => ~ pushprop_lem3v2 )
     => ~ pushprop_lem2v2_gthm ) ),
    introduced(definition,[new_symbols(definition,[sP15])]) ).

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

thf(sP17,plain,
    ( sP17
  <=> ! [X1: subst] :
        ( X1
        = ( comp @ X1 @ id ) ) ),
    introduced(definition,[new_symbols(definition,[sP17])]) ).

thf(sP18,plain,
    ( sP18
  <=> ( var @ eigen__4 ) ),
    introduced(definition,[new_symbols(definition,[sP18])]) ).

thf(sP19,plain,
    ( sP19
  <=> ! [X1: term,X2: subst,X3: term] :
        ( ( var @ X1 )
       => ( eigen__0 @ ( sub @ X1 @ ( push @ X3 @ X2 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP19])]) ).

thf(sP20,plain,
    ( sP20
  <=> ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
          ( ~ ( ( X1 @ X3 )
             => ~ ! [X5: term] :
                    ( ( X2 @ X5 )
                    = ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) )
         => ( X2 @ one ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP20])]) ).

thf(sP21,plain,
    ( sP21
  <=> ! [X1: term] :
        ( ( eigen__1 @ X1 )
        = ( eigen__0 @ ( sub @ X1 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP21])]) ).

thf(sP22,plain,
    ( sP22
  <=> ! [X1: term] :
        ~ ! [X2: subst > term > term] :
            ~ ! [X3: term,X4: subst] :
                ( ( sub @ X1 @ ( push @ X3 @ X4 ) )
                = ( X2 @ X4 @ X3 ) ) ),
    introduced(definition,[new_symbols(definition,[sP22])]) ).

thf(sP23,plain,
    ( sP23
  <=> ( ~ sP14
     => ( hoasinduction_lthm_3
       != ( sP10
         => ( ! [X1: term > $o,X2: term] :
                ( ~ ( ~ ( ! [X3: term] :
                            ( ( var @ X3 )
                           => ( X1 @ X3 ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ X3 )
                                 => ~ ( X1 @ X4 ) )
                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                   => ~ ! [X3: term] :
                          ( ! [X4: term] :
                              ( ( X1 @ X4 )
                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                         => ( X1 @ ( lam @ X3 ) ) ) )
               => ( X1 @ X2 ) )
           => ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) )
             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                   => ~ ! [X5: term] :
                                          ( ( X1 @ id @ X5 @ id )
                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                           => ~ ! [X4: term] :
                                  ( ( X2 @ X4 )
                                  = ( X1 @ id @ X4 @ id ) ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                   => ( X2 @ ( lam @ X3 ) ) )
               => ! [X1: subst > term > subst > $o,X2: term] :
                    ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                               => ~ ! [X3: term] :
                                      ( ( var @ ( sub @ X3 @ id ) )
                                     => ( X1 @ id @ X3 @ id ) ) )
                           => ~ ! [X3: term,X4: term] :
                                  ( ~ ( ( X1 @ id @ X3 @ id )
                                     => ~ ( X1 @ id @ X4 @ id ) )
                                 => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                       => ~ ! [X3: subst > term > term] :
                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                 => ~ ! [X4: term] :
                                        ( ( X1 @ id @ X4 @ id )
                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP23])]) ).

thf(sP24,plain,
    ( sP24
  <=> ! [X1: term > $o] :
        ( ( pushprop_p_and_p_prime @ eigen__2 @ eigen__3 @ eigen__0 @ X1 )
        = ( ! [X2: term] :
              ( ( X1 @ X2 )
              = ( eigen__0 @ ( sub @ X2 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP24])]) ).

thf(sP25,plain,
    ( sP25
  <=> ! [X1: subst,X2: term] :
        ( sP18
       => ( eigen__0 @ ( sub @ eigen__4 @ ( push @ X2 @ X1 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP25])]) ).

thf(sP26,plain,
    ( sP26
  <=> ! [X1: term,X2: term,X3: term,X4: term] :
        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
       => ( X3 = X4 ) ) ),
    introduced(definition,[new_symbols(definition,[sP26])]) ).

thf(sP27,plain,
    ( sP27
  <=> ( ~ sP5
     => ( hoasinduction_lem3v2
       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                         => ~ ! [X4: subst > term > term] :
                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                   => ~ ! [X5: term] :
                                          ( ( X1 @ id @ X5 @ id )
                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                            = ( X1 @ id @ X4 @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
             => ( X2 @ ( lam @ X3 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP27])]) ).

thf(sP28,plain,
    ( sP28
  <=> ( ~ ( ~ sP13
         => ( termmset
           != ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) ) ) ) )
     => ( pushprop_lem0_lthm
       != ( ! [X1: term > $o,X2: term,X3: subst] :
              ~ ! [X4: term > $o] :
                  ~ ! [X5: term] :
                      ( ( X4 @ X5 )
                      = ( X1 @ ( sub @ X5 @ ( push @ X2 @ X3 ) ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP28])]) ).

thf(sP29,plain,
    ( sP29
  <=> ( ~ sP28
     => ~ hoasapnotvar_lthm ) ),
    introduced(definition,[new_symbols(definition,[sP29])]) ).

thf(sP30,plain,
    ( sP30
  <=> ( ( pushprop_p_and_p_prime @ eigen__2 )
      = ( ^ [X1: subst,X2: term > $o,X3: term > $o] :
          ! [X4: term] :
            ( ( X3 @ X4 )
            = ( X2 @ ( sub @ X4 @ ( push @ eigen__2 @ X1 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP30])]) ).

thf(sP31,plain,
    ( sP31
  <=> ( sP18
     => sP6 ) ),
    introduced(definition,[new_symbols(definition,[sP31])]) ).

thf(sP32,plain,
    ( sP32
  <=> ( ~ sP13
     => ( termmset
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP32])]) ).

thf(sP33,plain,
    ( sP33
  <=> $false ),
    introduced(definition,[new_symbols(definition,[sP33])]) ).

thf(sP34,plain,
    ( sP34
  <=> ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
        ( ~ ( ( X1 @ X3 )
           => ~ ! [X5: term] :
                  ( ( X2 @ X5 )
                  = ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) )
       => ( X2 @ one ) ) ),
    introduced(definition,[new_symbols(definition,[sP34])]) ).

thf(sP35,plain,
    ( sP35
  <=> ( sP18
     => sP16 ) ),
    introduced(definition,[new_symbols(definition,[sP35])]) ).

thf(sP36,plain,
    ( sP36
  <=> ( pushprop_p_and_p_prime
      = ( ^ [X1: term,X2: subst,X3: term > $o,X4: term > $o] :
          ! [X5: term] :
            ( ( X4 @ X5 )
            = ( X3 @ ( sub @ X5 @ ( push @ X1 @ X2 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP36])]) ).

thf(sP37,plain,
    ( sP37
  <=> ! [X1: term] :
        ( sP18
       => ( eigen__0 @ ( sub @ eigen__4 @ ( push @ X1 @ eigen__3 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP37])]) ).

thf(sP38,plain,
    ( sP38
  <=> ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm
                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                                 => ~ axapp )
                                                                                                                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                                                                                                                             => ( induction
                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa
                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                                     => ~ axclos )
                                                                                                                                                                                                 => ~ axassoc )
                                                                                                                                                                                             => ( hoasinduction_lem2v2
                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                         => ~ pushprop_lthm )
                                                                                                                                                                                     => ( apinj2
                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                                 => ( apinj1
                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                             => ( hoasapinj2_lthm
                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                     => ( X3 = X4 ) )
                                                                                                                                                                                 => sP26 ) ) )
                                                                                                                                                                         => ( hoasinduction_lem3v2a
                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                                     => ( hoasapinj1_lthm
                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                              ( X1
                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                  = ( ap @ X2 @ X4 ) )
                                                                                                                                                                               => ( X1 = X2 ) )
                                                                                                                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                                 => ( hoaslaminj_lthm
                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                            ( X2
                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                       => ( ! [X1: term,X2: term] :
                                                                                                                                                                              ( ( ( lam @ X1 )
                                                                                                                                                                                = ( lam @ X2 ) )
                                                                                                                                                                             => ( X1 = X2 ) )
                                                                                                                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                                             => ( axvarcons
                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                                         => ( axscons
                                                                                                                                                           != ( ! [X1: subst] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                                     => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                                 => ( axidr != sP17 ) )
                                                                                                                                             => ( pushprop_lem1 != sP12 ) )
                                                                                                                                         => ( laminj
                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                                                    = ( lam @ X2 ) )
                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                     => ( hoasinduction_lem3_lthm
                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) )
                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                 => ( pushprop_lem0
                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                          ~ ! [X4: term > $o] :
                                                                                                                                              ~ ! [X5: term] :
                                                                                                                                                  ( ( X4 @ X5 )
                                                                                                                                                  = ( X1 @ ( sub @ X5 @ ( push @ X2 @ X3 ) ) ) ) ) ) )
                                                                                                                             => ~ pushprop_gthm )
                                                                                                                         => ~ axabs )
                                                                                                                     => ( hoasinduction_lem3v2a_lthm
                                                                                                                       != ( sP22
                                                                                                                         => ( ! [X1: term] :
                                                                                                                                ( X1
                                                                                                                                = ( sub @ X1 @ id ) )
                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                                 => ~ hoasinduction_lem2_lthm )
                                                                                                             => ~ hoasapinj2_gthm )
                                                                                                         => ~ hoasinduction_lem1_lthm )
                                                                                                     => lamnotap )
                                                                                                 => ~ hoasapinj1_gthm )
                                                                                             => ~ hoaslamnotvar )
                                                                                         => ( axidl != sP4 ) )
                                                                                     => ~ hoaslaminj_gthm )
                                                                                 => ( induction2_lthm
                                                                                   != ( ! [X1: term] :
                                                                                          ( X1
                                                                                          = ( sub @ X1 @ id ) )
                                                                                     => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ! [X5: term] :
                                                                                                              ( ( X1 @ X5 )
                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( var @ X4 )
                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                                       => ! [X1: term > $o,X2: term] :
                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                        ( ( var @ X3 )
                                                                                                       => ( X1 @ X3 ) )
                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                               => ~ ! [X3: term] :
                                                                                                      ( ! [X4: term] :
                                                                                                          ( ( X1 @ X4 )
                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                           => ( X1 @ X2 ) ) ) ) ) )
                                                                             => ( hoasinduction_lem0_lthm != sP10 ) )
                                                                         => ( substmonoid_lthm
                                                                           != ( sP4
                                                                             => ( sP17
                                                                               => ~ sP11 ) ) ) )
                                                                     => ~ pushprop )
                                                                 => ~ hoasinduction_lem3_gthm )
                                                             => ~ hoasinduction_lem2_gthm )
                                                         => ( hoasinduction_lem3b != sP9 ) )
                                                     => ( substmonoid != ( ~ sP11 ) ) )
                                                 => ~ lamnotvar )
                                             => ( hoasinduction_lem3a
                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ! [X3: subst > term > term] :
                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ( X1 @ id @ X4 @ id )
                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( X1 @ id @ X3 @ id )
                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                         => ~ hoasinduction_lem1_gthm )
                                     => ( hoasinduction_no_psi_cond
                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ! [X3: term,X4: term] :
                                                      ( ~ ( ( X1 @ id @ X3 @ id )
                                                         => ~ ( X1 @ id @ X4 @ id ) )
                                                     => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                 => ~ ! [X3: subst > term > term] :
                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X1 @ id @ X4 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                 => ~ induction2_gthm )
                             => ~ pushprop_lem2v2_lthm )
                         => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
                     => ( hoaslamnotap
                       != ( ! [X1: subst > term > term,X2: term,X3: term] :
                              ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                                  = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ( ( lam @ ( X1 @ sh @ one ) )
                               != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) )
                 => ~ substmonoid_gthm )
             => ~ ulamvarsh )
         => ( induction2
           != ( ! [X1: term > $o,X2: term] :
                  ( ~ ( ~ ( ! [X3: term] :
                              ( ( var @ X3 )
                             => ( X1 @ X3 ) )
                         => ~ ! [X3: term,X4: term] :
                                ( ~ ( ( X1 @ X3 )
                                   => ~ ( X1 @ X4 ) )
                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                     => ~ ! [X3: term] :
                            ( ! [X4: term] :
                                ( ( X1 @ X4 )
                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                           => ( X1 @ ( lam @ X3 ) ) ) )
                 => ( X1 @ X2 ) ) ) ) )
     => ~ pushprop_lem3v2 ) ),
    introduced(definition,[new_symbols(definition,[sP38])]) ).

thf(sP39,plain,
    ( sP39
  <=> ( sP16 = sP6 ) ),
    introduced(definition,[new_symbols(definition,[sP39])]) ).

thf(sP40,plain,
    ( sP40
  <=> ! [X1: subst > term > subst > $o,X2: term] :
        ( ~ ( ! [X3: subst > term > term] :
                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                   => ~ ! [X4: term] :
                          ( ( X1 @ id @ X4 @ id )
                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
           => ~ ! [X3: term] :
                  ( ( X1 @ id @ X3 @ id )
                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
       => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ),
    introduced(definition,[new_symbols(definition,[sP40])]) ).

thf(sP41,plain,
    ( sP41
  <=> ! [X1: term > $o,X2: term,X3: subst] :
        ~ ! [X4: term > $o] :
            ~ ! [X5: term] :
                ( ( X4 @ X5 )
                = ( X1 @ ( sub @ X5 @ ( push @ X2 @ X3 ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP41])]) ).

thf(sP42,plain,
    ( sP42
  <=> ! [X1: term > $o] :
        ( ( pushprop_p_and_p_prime @ eigen__2 @ eigen__3 @ X1 )
        = ( ^ [X2: term > $o] :
            ! [X3: term] :
              ( ( X2 @ X3 )
              = ( X1 @ ( sub @ X3 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP42])]) ).

thf(sP43,plain,
    ( sP43
  <=> ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ X1 @ X3 )
            = ( ap @ X2 @ X4 ) )
         => ( X3 = X4 ) )
     => sP26 ) ),
    introduced(definition,[new_symbols(definition,[sP43])]) ).

thf(sP44,plain,
    ( sP44
  <=> ( pushprop_p_and_p_prime @ eigen__2 @ eigen__3 @ eigen__0 @ eigen__1 ) ),
    introduced(definition,[new_symbols(definition,[sP44])]) ).

thf(sP45,plain,
    ( sP45
  <=> ( ( pushprop_p_and_p_prime @ eigen__2 @ eigen__3 @ eigen__0 )
      = ( ^ [X1: term > $o] :
          ! [X2: term] :
            ( ( X1 @ X2 )
            = ( eigen__0 @ ( sub @ X2 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP45])]) ).

thf(sP46,plain,
    ( sP46
  <=> ! [X1: term] :
        ( ( pushprop_p_and_p_prime @ X1 )
        = ( ^ [X2: subst,X3: term > $o,X4: term > $o] :
            ! [X5: term] :
              ( ( X4 @ X5 )
              = ( X3 @ ( sub @ X5 @ ( push @ X1 @ X2 ) ) ) ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP46])]) ).

thf(sP47,plain,
    ( sP47
  <=> pushprop_lem3v2 ),
    introduced(definition,[new_symbols(definition,[sP47])]) ).

thf(sP48,plain,
    ( sP48
  <=> ( sP44 = sP21 ) ),
    introduced(definition,[new_symbols(definition,[sP48])]) ).

thf(pushprop_lem3v2,conjecture,
    ( sP47
    = ( ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
          ( ( pushprop_p_and_p_prime @ X3 @ X4 @ X1 @ X2 )
         => ( ! [X5: term] :
                ( ( var @ X5 )
               => ( X2 @ X5 ) )
           => ! [X5: term] :
                ( ( var @ X5 )
               => ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) ) ) ) ) ).

thf(h0,negated_conjecture,
    ( sP47
   != ( ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
          ( ( pushprop_p_and_p_prime @ X3 @ X4 @ X1 @ X2 )
         => ( ! [X5: term] :
                ( ( var @ X5 )
               => ( X2 @ X5 ) )
           => ! [X5: term] :
                ( ( var @ X5 )
               => ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) ) ) ) ),
    inference(assume_negation,[status(cth)],[pushprop_lem3v2]) ).

thf(h1,assumption,
    sP47,
    introduced(assumption,[]) ).

thf(h2,assumption,
    ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
      ( ( pushprop_p_and_p_prime @ X3 @ X4 @ X1 @ X2 )
     => ( ! [X5: term] :
            ( ( var @ X5 )
           => ( X2 @ X5 ) )
       => ! [X5: term] :
            ( ( var @ X5 )
           => ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h4,assumption,
    ~ ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
        ( ( pushprop_p_and_p_prime @ X3 @ X4 @ X1 @ X2 )
       => ( ! [X5: term] :
              ( ( var @ X5 )
             => ( X2 @ X5 ) )
         => ! [X5: term] :
              ( ( var @ X5 )
             => ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h5,assumption,
    ~ ! [X1: term > $o,X2: term,X3: subst] :
        ( ( pushprop_p_and_p_prime @ X2 @ X3 @ eigen__0 @ X1 )
       => ( ! [X4: term] :
              ( ( var @ X4 )
             => ( X1 @ X4 ) )
         => ! [X4: term] :
              ( ( var @ X4 )
             => ( eigen__0 @ ( sub @ X4 @ ( push @ X2 @ X3 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h6,assumption,
    ~ ! [X1: term,X2: subst] :
        ( ( pushprop_p_and_p_prime @ X1 @ X2 @ eigen__0 @ eigen__1 )
       => ( sP1
         => ! [X3: term] :
              ( ( var @ X3 )
             => ( eigen__0 @ ( sub @ X3 @ ( push @ X1 @ X2 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h7,assumption,
    ~ ! [X1: subst] :
        ( ( pushprop_p_and_p_prime @ eigen__2 @ X1 @ eigen__0 @ eigen__1 )
       => ( sP1
         => ! [X2: term] :
              ( ( var @ X2 )
             => ( eigen__0 @ ( sub @ X2 @ ( push @ eigen__2 @ X1 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h8,assumption,
    ~ ( sP44
     => ( sP1
       => ! [X1: term] :
            ( ( var @ X1 )
           => ( eigen__0 @ ( sub @ X1 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h9,assumption,
    sP44,
    introduced(assumption,[]) ).

thf(h10,assumption,
    ~ ( sP1
     => ! [X1: term] :
          ( ( var @ X1 )
         => ( eigen__0 @ ( sub @ X1 @ ( push @ eigen__2 @ eigen__3 ) ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h12,assumption,
    ~ ! [X1: term] :
        ( ( var @ X1 )
       => ( eigen__0 @ ( sub @ X1 @ ( push @ eigen__2 @ eigen__3 ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h14,assumption,
    sP18,
    introduced(assumption,[]) ).

thf(h15,assumption,
    ~ sP6,
    introduced(assumption,[]) ).

thf(h16,assumption,
    ~ sP14,
    introduced(assumption,[]) ).

thf(h17,assumption,
    ( hoasinduction_lthm_3
    = ( sP10
     => ( ! [X1: term > $o,X2: term] :
            ( ~ ( ~ ( ! [X3: term] :
                        ( ( var @ X3 )
                       => ( X1 @ X3 ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ X3 )
                             => ~ ( X1 @ X4 ) )
                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
               => ~ ! [X3: term] :
                      ( ! [X4: term] :
                          ( ( X1 @ X4 )
                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                     => ( X1 @ ( lam @ X3 ) ) ) )
           => ( X1 @ X2 ) )
       => ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                ( ~ ( ~ ( ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                              = ( X1 @ id @ X4 @ id ) ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
               => ( X2 @ ( lam @ X3 ) ) )
           => ! [X1: subst > term > subst > $o,X2: term] :
                ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                           => ~ ! [X3: term] :
                                  ( ( var @ ( sub @ X3 @ id ) )
                                 => ( X1 @ id @ X3 @ id ) ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ id @ X3 @ id )
                                 => ~ ( X1 @ id @ X4 @ id ) )
                             => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h18,assumption,
    ~ sP7,
    introduced(assumption,[]) ).

thf(h19,assumption,
    ( axvarid
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h21,assumption,
    ( hoasinduction_lem3v2_lthm
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                     => ~ ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                        = ( X1 @ id @ X4 @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
         => ( X2 @ ( lam @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h23,assumption,
    hoasapnotvar_lthm,
    introduced(assumption,[]) ).

thf(h24,assumption,
    ~ sP32,
    introduced(assumption,[]) ).

thf(h25,assumption,
    pushprop_lem0_lthm = sP41,
    introduced(assumption,[]) ).

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

thf(h27,assumption,
    ( termmset
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h29,assumption,
    ( axshiftcons
    = ( ! [X1: term,X2: subst] :
          ( X2
          = ( comp @ sh @ ( push @ X1 @ X2 ) ) ) ) ),
    introduced(assumption,[]) ).

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

thf(h31,assumption,
    ( hoasinduction_lem3v2
    = ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                     => ~ ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                        = ( X1 @ id @ X4 @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
         => ( X2 @ ( lam @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h32,assumption,
    ~ sP15,
    introduced(assumption,[]) ).

thf(h33,assumption,
    ( pushprop_lem1_lthm
    = ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( X2
            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
       => sP12 ) ) ),
    introduced(assumption,[]) ).

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

thf(h35,assumption,
    pushprop_lem2v2_gthm,
    introduced(assumption,[]) ).

thf(h36,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                             => ~ axapp )
                                                                                                                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                                             => ~ ulamvarind )
                                                                                                                                                                                                                                         => ( induction
                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                         => ( sP40
                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                                 => ~ termmset_gthm )
                                                                                                                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                                 => ~ axclos )
                                                                                                                                                                                             => ~ axassoc )
                                                                                                                                                                                         => ( hoasinduction_lem2v2
                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                     => ~ pushprop_lthm )
                                                                                                                                                                                 => ( apinj2
                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                             => ( apinj1
                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                                                     => ( hoasinduction_lem3v2a
                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                                 => ( hoasapinj1_lthm
                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                            ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                              = ( ap @ X2 @ X4 ) )
                                                                                                                                                                           => ( X1 = X2 ) )
                                                                                                                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                             => ( hoaslaminj_lthm
                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                        ( X2
                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                   => ( ! [X1: term,X2: term] :
                                                                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                                                                            = ( lam @ X2 ) )
                                                                                                                                                                         => ( X1 = X2 ) )
                                                                                                                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                                         => ( axvarcons
                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                                     => ( axscons
                                                                                                                                                       != ( ! [X1: subst] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                                 => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                             => ( axidr != sP17 ) )
                                                                                                                                         => ( pushprop_lem1 != sP12 ) )
                                                                                                                                     => ( laminj
                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                              ( ( ( lam @ X1 )
                                                                                                                                                = ( lam @ X2 ) )
                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                 => ( hoasinduction_lem3_lthm
                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                     => ( sP40
                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                             => ( pushprop_lem0 != sP41 ) )
                                                                                                                         => ~ pushprop_gthm )
                                                                                                                     => ~ axabs )
                                                                                                                 => ( hoasinduction_lem3v2a_lthm
                                                                                                                   != ( sP22
                                                                                                                     => ( ! [X1: term] :
                                                                                                                            ( X1
                                                                                                                            = ( sub @ X1 @ id ) )
                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                             => ~ hoasinduction_lem2_lthm )
                                                                                                         => ~ hoasapinj2_gthm )
                                                                                                     => ~ hoasinduction_lem1_lthm )
                                                                                                 => lamnotap )
                                                                                             => ~ hoasapinj1_gthm )
                                                                                         => ~ hoaslamnotvar )
                                                                                     => ( axidl != sP4 ) )
                                                                                 => ~ hoaslaminj_gthm )
                                                                             => ( induction2_lthm
                                                                               != ( ! [X1: term] :
                                                                                      ( X1
                                                                                      = ( sub @ X1 @ id ) )
                                                                                 => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ! [X5: term] :
                                                                                                          ( ( X1 @ X5 )
                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( var @ X4 )
                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                                   => ! [X1: term > $o,X2: term] :
                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                    ( ( var @ X3 )
                                                                                                   => ( X1 @ X3 ) )
                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                           => ~ ! [X3: term] :
                                                                                                  ( ! [X4: term] :
                                                                                                      ( ( X1 @ X4 )
                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                       => ( X1 @ X2 ) ) ) ) ) )
                                                                         => ( hoasinduction_lem0_lthm != sP10 ) )
                                                                     => ( substmonoid_lthm
                                                                       != ( sP4
                                                                         => ( sP17
                                                                           => ~ sP11 ) ) ) )
                                                                 => ~ pushprop )
                                                             => ~ hoasinduction_lem3_gthm )
                                                         => ~ hoasinduction_lem2_gthm )
                                                     => ( hoasinduction_lem3b != sP9 ) )
                                                 => ( substmonoid != ( ~ sP11 ) ) )
                                             => ~ lamnotvar )
                                         => ( hoasinduction_lem3a
                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ! [X3: subst > term > term] :
                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ( X1 @ id @ X4 @ id )
                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( X1 @ id @ X3 @ id )
                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                     => ~ hoasinduction_lem1_gthm )
                                 => ( hoasinduction_no_psi_cond
                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ! [X3: term,X4: term] :
                                                  ( ~ ( ( X1 @ id @ X3 @ id )
                                                     => ~ ( X1 @ id @ X4 @ id ) )
                                                 => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                             => ~ ! [X3: subst > term > term] :
                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X1 @ id @ X4 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                             => ~ induction2_gthm )
                         => ~ pushprop_lem2v2_lthm )
                     => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
                 => ( hoaslamnotap
                   != ( ! [X1: subst > term > term,X2: term,X3: term] :
                          ( ! [X4: subst,X5: term,X6: subst] :
                              ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                              = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                         => ( ( lam @ ( X1 @ sh @ one ) )
                           != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) )
             => ~ substmonoid_gthm )
         => ~ ulamvarsh )
     => ( induction2
       != ( ! [X1: term > $o,X2: term] :
              ( ~ ( ~ ( ! [X3: term] :
                          ( ( var @ X3 )
                         => ( X1 @ X3 ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ X3 )
                               => ~ ( X1 @ X4 ) )
                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                 => ~ ! [X3: term] :
                        ( ! [X4: term] :
                            ( ( X1 @ X4 )
                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                       => ( X1 @ ( lam @ X3 ) ) ) )
             => ( X1 @ X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h37,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                                                                                                     => ( induction
                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                     => ( sP40
                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                             => ~ axclos )
                                                                                                                                                                                         => ~ axassoc )
                                                                                                                                                                                     => ( hoasinduction_lem2v2
                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                 => ~ pushprop_lthm )
                                                                                                                                                                             => ( apinj2
                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                         => ( apinj1
                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                                                 => ( hoasinduction_lem3v2a
                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                             => ( hoasapinj1_lthm
                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                                                                                                       => ( X1 = X2 ) )
                                                                                                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                         => ( hoaslaminj_lthm
                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                    ( X2
                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                               => ( ! [X1: term,X2: term] :
                                                                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                                                                        = ( lam @ X2 ) )
                                                                                                                                                                     => ( X1 = X2 ) )
                                                                                                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                                     => ( axvarcons
                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                                 => ( axscons
                                                                                                                                                   != ( ! [X1: subst] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                             => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                         => ( axidr != sP17 ) )
                                                                                                                                     => ( pushprop_lem1 != sP12 ) )
                                                                                                                                 => ( laminj
                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                                            = ( lam @ X2 ) )
                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                             => ( hoasinduction_lem3_lthm
                                                                                                                               != ( ! [X1: term] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                 => ( sP40
                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                         => ( pushprop_lem0 != sP41 ) )
                                                                                                                     => ~ pushprop_gthm )
                                                                                                                 => ~ axabs )
                                                                                                             => ( hoasinduction_lem3v2a_lthm
                                                                                                               != ( sP22
                                                                                                                 => ( ! [X1: term] :
                                                                                                                        ( X1
                                                                                                                        = ( sub @ X1 @ id ) )
                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                         => ~ hoasinduction_lem2_lthm )
                                                                                                     => ~ hoasapinj2_gthm )
                                                                                                 => ~ hoasinduction_lem1_lthm )
                                                                                             => lamnotap )
                                                                                         => ~ hoasapinj1_gthm )
                                                                                     => ~ hoaslamnotvar )
                                                                                 => ( axidl != sP4 ) )
                                                                             => ~ hoaslaminj_gthm )
                                                                         => ( induction2_lthm
                                                                           != ( ! [X1: term] :
                                                                                  ( X1
                                                                                  = ( sub @ X1 @ id ) )
                                                                             => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ! [X5: term] :
                                                                                                      ( ( X1 @ X5 )
                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( var @ X4 )
                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                               => ! [X1: term > $o,X2: term] :
                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                ( ( var @ X3 )
                                                                                               => ( X1 @ X3 ) )
                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                       => ~ ! [X3: term] :
                                                                                              ( ! [X4: term] :
                                                                                                  ( ( X1 @ X4 )
                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                   => ( X1 @ X2 ) ) ) ) ) )
                                                                     => ( hoasinduction_lem0_lthm != sP10 ) )
                                                                 => ( substmonoid_lthm
                                                                   != ( sP4
                                                                     => ( sP17
                                                                       => ~ sP11 ) ) ) )
                                                             => ~ pushprop )
                                                         => ~ hoasinduction_lem3_gthm )
                                                     => ~ hoasinduction_lem2_gthm )
                                                 => ( hoasinduction_lem3b != sP9 ) )
                                             => ( substmonoid != ( ~ sP11 ) ) )
                                         => ~ lamnotvar )
                                     => ( hoasinduction_lem3a
                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ! [X3: subst > term > term] :
                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                         => ~ ! [X4: term] :
                                                                ( ( X1 @ id @ X4 @ id )
                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( X1 @ id @ X3 @ id )
                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                 => ~ hoasinduction_lem1_gthm )
                             => ( hoasinduction_no_psi_cond
                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ! [X3: term,X4: term] :
                                              ( ~ ( ( X1 @ id @ X3 @ id )
                                                 => ~ ( X1 @ id @ X4 @ id ) )
                                             => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                         => ~ ! [X3: subst > term > term] :
                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X1 @ id @ X4 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                         => ~ induction2_gthm )
                     => ~ pushprop_lem2v2_lthm )
                 => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
             => ( hoaslamnotap
               != ( ! [X1: subst > term > term,X2: term,X3: term] :
                      ( ! [X4: subst,X5: term,X6: subst] :
                          ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                          = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                     => ( ( lam @ ( X1 @ sh @ one ) )
                       != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) )
         => ~ substmonoid_gthm )
     => ~ ulamvarsh ),
    introduced(assumption,[]) ).

thf(h38,assumption,
    ( induction2
    = ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h39,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                                                                                                 => ( induction
                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                 => ( sP40
                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                         => ~ axclos )
                                                                                                                                                                                     => ~ axassoc )
                                                                                                                                                                                 => ( hoasinduction_lem2v2
                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                             => ~ pushprop_lthm )
                                                                                                                                                                         => ( apinj2
                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                     => ( apinj1
                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                                             => ( hoasinduction_lem3v2a
                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                         => ( hoasapinj1_lthm
                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                                                                                                   => ( X1 = X2 ) )
                                                                                                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                     => ( hoaslaminj_lthm
                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                ( X2
                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                           => ( ! [X1: term,X2: term] :
                                                                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                                                                    = ( lam @ X2 ) )
                                                                                                                                                                 => ( X1 = X2 ) )
                                                                                                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                                 => ( axvarcons
                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                             => ( axscons
                                                                                                                                               != ( ! [X1: subst] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                         => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                     => ( axidr != sP17 ) )
                                                                                                                                 => ( pushprop_lem1 != sP12 ) )
                                                                                                                             => ( laminj
                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                                        = ( lam @ X2 ) )
                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                         => ( hoasinduction_lem3_lthm
                                                                                                                           != ( ! [X1: term] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                             => ( sP40
                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                     => ( pushprop_lem0 != sP41 ) )
                                                                                                                 => ~ pushprop_gthm )
                                                                                                             => ~ axabs )
                                                                                                         => ( hoasinduction_lem3v2a_lthm
                                                                                                           != ( sP22
                                                                                                             => ( ! [X1: term] :
                                                                                                                    ( X1
                                                                                                                    = ( sub @ X1 @ id ) )
                                                                                                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X2 @ X4 )
                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                     => ~ hoasinduction_lem2_lthm )
                                                                                                 => ~ hoasapinj2_gthm )
                                                                                             => ~ hoasinduction_lem1_lthm )
                                                                                         => lamnotap )
                                                                                     => ~ hoasapinj1_gthm )
                                                                                 => ~ hoaslamnotvar )
                                                                             => ( axidl != sP4 ) )
                                                                         => ~ hoaslaminj_gthm )
                                                                     => ( induction2_lthm
                                                                       != ( ! [X1: term] :
                                                                              ( X1
                                                                              = ( sub @ X1 @ id ) )
                                                                         => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                               => ~ ( X1 @ X5 ) )
                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ! [X5: term] :
                                                                                                  ( ( X1 @ X5 )
                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( var @ X4 )
                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                           => ! [X1: term > $o,X2: term] :
                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                            ( ( var @ X3 )
                                                                                           => ( X1 @ X3 ) )
                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                   => ~ ! [X3: term] :
                                                                                          ( ! [X4: term] :
                                                                                              ( ( X1 @ X4 )
                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                               => ( X1 @ X2 ) ) ) ) ) )
                                                                 => ( hoasinduction_lem0_lthm != sP10 ) )
                                                             => ( substmonoid_lthm
                                                               != ( sP4
                                                                 => ( sP17
                                                                   => ~ sP11 ) ) ) )
                                                         => ~ pushprop )
                                                     => ~ hoasinduction_lem3_gthm )
                                                 => ~ hoasinduction_lem2_gthm )
                                             => ( hoasinduction_lem3b != sP9 ) )
                                         => ( substmonoid != ( ~ sP11 ) ) )
                                     => ~ lamnotvar )
                                 => ( hoasinduction_lem3a
                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ! [X3: subst > term > term] :
                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                     => ~ ! [X4: term] :
                                                            ( ( X1 @ id @ X4 @ id )
                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                             => ~ ! [X3: term] :
                                                    ( ( X1 @ id @ X3 @ id )
                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                             => ~ hoasinduction_lem1_gthm )
                         => ( hoasinduction_no_psi_cond
                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ! [X3: term,X4: term] :
                                          ( ~ ( ( X1 @ id @ X3 @ id )
                                             => ~ ( X1 @ id @ X4 @ id ) )
                                         => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                     => ~ ! [X3: subst > term > term] :
                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X1 @ id @ X4 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                     => ~ induction2_gthm )
                 => ~ pushprop_lem2v2_lthm )
             => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
         => ( hoaslamnotap
           != ( ! [X1: subst > term > term,X2: term,X3: term] :
                  ( ! [X4: subst,X5: term,X6: subst] :
                      ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                      = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                 => ( ( lam @ ( X1 @ sh @ one ) )
                   != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) )
     => ~ substmonoid_gthm ),
    introduced(assumption,[]) ).

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

thf(h41,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                                 => ~ axapp )
                                                                                                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                                                                                                             => ( induction
                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                             => ( sP40
                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                     => ~ axclos )
                                                                                                                                                                                 => ~ axassoc )
                                                                                                                                                                             => ( hoasinduction_lem2v2
                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                         => ~ pushprop_lthm )
                                                                                                                                                                     => ( apinj2
                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                                                                                 => ( apinj1
                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                                         => ( hoasinduction_lem3v2a
                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                     => ( hoasapinj1_lthm
                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                  = ( ap @ X2 @ X4 ) )
                                                                                                                                                               => ( X1 = X2 ) )
                                                                                                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                                 => ( hoaslaminj_lthm
                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                            ( X2
                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                       => ( ! [X1: term,X2: term] :
                                                                                                                                                              ( ( ( lam @ X1 )
                                                                                                                                                                = ( lam @ X2 ) )
                                                                                                                                                             => ( X1 = X2 ) )
                                                                                                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                             => ( axvarcons
                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                         => ( axscons
                                                                                                                                           != ( ! [X1: subst] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                     => ~ hoasinduction_lem2v2_gthm )
                                                                                                                                 => ( axidr != sP17 ) )
                                                                                                                             => ( pushprop_lem1 != sP12 ) )
                                                                                                                         => ( laminj
                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                                    = ( lam @ X2 ) )
                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                     => ( hoasinduction_lem3_lthm
                                                                                                                       != ( ! [X1: term] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                         => ( sP40
                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                 => ( pushprop_lem0 != sP41 ) )
                                                                                                             => ~ pushprop_gthm )
                                                                                                         => ~ axabs )
                                                                                                     => ( hoasinduction_lem3v2a_lthm
                                                                                                       != ( sP22
                                                                                                         => ( ! [X1: term] :
                                                                                                                ( X1
                                                                                                                = ( sub @ X1 @ id ) )
                                                                                                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X2 @ X4 )
                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X2 @ X4 )
                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                                 => ~ hoasinduction_lem2_lthm )
                                                                                             => ~ hoasapinj2_gthm )
                                                                                         => ~ hoasinduction_lem1_lthm )
                                                                                     => lamnotap )
                                                                                 => ~ hoasapinj1_gthm )
                                                                             => ~ hoaslamnotvar )
                                                                         => ( axidl != sP4 ) )
                                                                     => ~ hoaslaminj_gthm )
                                                                 => ( induction2_lthm
                                                                   != ( ! [X1: term] :
                                                                          ( X1
                                                                          = ( sub @ X1 @ id ) )
                                                                     => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                           => ~ ( X1 @ X5 ) )
                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ! [X5: term] :
                                                                                              ( ( X1 @ X5 )
                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( var @ X4 )
                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                       => ! [X1: term > $o,X2: term] :
                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                        ( ( var @ X3 )
                                                                                       => ( X1 @ X3 ) )
                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                             => ~ ( X1 @ X4 ) )
                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                               => ~ ! [X3: term] :
                                                                                      ( ! [X4: term] :
                                                                                          ( ( X1 @ X4 )
                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                           => ( X1 @ X2 ) ) ) ) ) )
                                                             => ( hoasinduction_lem0_lthm != sP10 ) )
                                                         => ( substmonoid_lthm
                                                           != ( sP4
                                                             => ( sP17
                                                               => ~ sP11 ) ) ) )
                                                     => ~ pushprop )
                                                 => ~ hoasinduction_lem3_gthm )
                                             => ~ hoasinduction_lem2_gthm )
                                         => ( hoasinduction_lem3b != sP9 ) )
                                     => ( substmonoid != ( ~ sP11 ) ) )
                                 => ~ lamnotvar )
                             => ( hoasinduction_lem3a
                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ! [X3: subst > term > term] :
                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                 => ~ ! [X4: term] :
                                                        ( ( X1 @ id @ X4 @ id )
                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                         => ~ ! [X3: term] :
                                                ( ( X1 @ id @ X3 @ id )
                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                         => ~ hoasinduction_lem1_gthm )
                     => ( hoasinduction_no_psi_cond
                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ! [X3: term,X4: term] :
                                      ( ~ ( ( X1 @ id @ X3 @ id )
                                         => ~ ( X1 @ id @ X4 @ id ) )
                                     => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                 => ~ ! [X3: subst > term > term] :
                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X1 @ id @ X4 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                 => ~ induction2_gthm )
             => ~ pushprop_lem2v2_lthm )
         => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) )
     => ( hoaslamnotap
       != ( ! [X1: subst > term > term,X2: term,X3: term] :
              ( ! [X4: subst,X5: term,X6: subst] :
                  ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
                  = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
             => ( ( lam @ ( X1 @ sh @ one ) )
               != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h42,assumption,
    substmonoid_gthm,
    introduced(assumption,[]) ).

thf(h43,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                             => ~ axapp )
                                                                                                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                             => ~ ulamvarind )
                                                                                                                                                                                                                         => ( induction
                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                         => ( sP40
                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                                 => ~ termmset_gthm )
                                                                                                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                                 => ~ axclos )
                                                                                                                                                                             => ~ axassoc )
                                                                                                                                                                         => ( hoasinduction_lem2v2
                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                     => ~ pushprop_lthm )
                                                                                                                                                                 => ( apinj2
                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                                                                                             => ( apinj1
                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                                     => ( hoasinduction_lem3v2a
                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                                 => ( hoasapinj1_lthm
                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                            ( ( ( ap @ X1 @ X3 )
                                                                                                                                                              = ( ap @ X2 @ X4 ) )
                                                                                                                                                           => ( X1 = X2 ) )
                                                                                                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                             => ( hoaslaminj_lthm
                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                        ( X2
                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                   => ( ! [X1: term,X2: term] :
                                                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                                                            = ( lam @ X2 ) )
                                                                                                                                                         => ( X1 = X2 ) )
                                                                                                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                         => ( axvarcons
                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                     => ( axscons
                                                                                                                                       != ( ! [X1: subst] :
                                                                                                                                              ( X1
                                                                                                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                                 => ~ hoasinduction_lem2v2_gthm )
                                                                                                                             => ( axidr != sP17 ) )
                                                                                                                         => ( pushprop_lem1 != sP12 ) )
                                                                                                                     => ( laminj
                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                              ( ( ( lam @ X1 )
                                                                                                                                = ( lam @ X2 ) )
                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                 => ( hoasinduction_lem3_lthm
                                                                                                                   != ( ! [X1: term] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                     => ( sP40
                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                             => ( pushprop_lem0 != sP41 ) )
                                                                                                         => ~ pushprop_gthm )
                                                                                                     => ~ axabs )
                                                                                                 => ( hoasinduction_lem3v2a_lthm
                                                                                                   != ( sP22
                                                                                                     => ( ! [X1: term] :
                                                                                                            ( X1
                                                                                                            = ( sub @ X1 @ id ) )
                                                                                                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X2 @ X4 )
                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X2 @ X4 )
                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                             => ~ hoasinduction_lem2_lthm )
                                                                                         => ~ hoasapinj2_gthm )
                                                                                     => ~ hoasinduction_lem1_lthm )
                                                                                 => lamnotap )
                                                                             => ~ hoasapinj1_gthm )
                                                                         => ~ hoaslamnotvar )
                                                                     => ( axidl != sP4 ) )
                                                                 => ~ hoaslaminj_gthm )
                                                             => ( induction2_lthm
                                                               != ( ! [X1: term] :
                                                                      ( X1
                                                                      = ( sub @ X1 @ id ) )
                                                                 => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                       => ~ ( X1 @ X5 ) )
                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ! [X5: term] :
                                                                                          ( ( X1 @ X5 )
                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( var @ X4 )
                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                                   => ! [X1: term > $o,X2: term] :
                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                    ( ( var @ X3 )
                                                                                   => ( X1 @ X3 ) )
                                                                               => ~ ! [X3: term,X4: term] :
                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                         => ~ ( X1 @ X4 ) )
                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                           => ~ ! [X3: term] :
                                                                                  ( ! [X4: term] :
                                                                                      ( ( X1 @ X4 )
                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                       => ( X1 @ X2 ) ) ) ) ) )
                                                         => ( hoasinduction_lem0_lthm != sP10 ) )
                                                     => ( substmonoid_lthm
                                                       != ( sP4
                                                         => ( sP17
                                                           => ~ sP11 ) ) ) )
                                                 => ~ pushprop )
                                             => ~ hoasinduction_lem3_gthm )
                                         => ~ hoasinduction_lem2_gthm )
                                     => ( hoasinduction_lem3b != sP9 ) )
                                 => ( substmonoid != ( ~ sP11 ) ) )
                             => ~ lamnotvar )
                         => ( hoasinduction_lem3a
                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ! [X3: subst > term > term] :
                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                             => ~ ! [X4: term] :
                                                    ( ( X1 @ id @ X4 @ id )
                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                     => ~ ! [X3: term] :
                                            ( ( X1 @ id @ X3 @ id )
                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                     => ~ hoasinduction_lem1_gthm )
                 => ( hoasinduction_no_psi_cond
                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ! [X3: term,X4: term] :
                                  ( ~ ( ( X1 @ id @ X3 @ id )
                                     => ~ ( X1 @ id @ X4 @ id ) )
                                 => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                             => ~ ! [X3: subst > term > term] :
                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X1 @ id @ X4 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                         => ( X1 @ id @ X2 @ id ) ) ) ) )
             => ~ induction2_gthm )
         => ~ pushprop_lem2v2_lthm )
     => ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ) ),
    introduced(assumption,[]) ).

thf(h44,assumption,
    ( hoaslamnotap
    = ( ! [X1: subst > term > term,X2: term,X3: term] :
          ( ! [X4: subst,X5: term,X6: subst] :
              ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
              = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
         => ( ( lam @ ( X1 @ sh @ one ) )
           != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h45,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                                                                                     => ( induction
                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                     => ( sP40
                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                             => ~ axclos )
                                                                                                                                                                         => ~ axassoc )
                                                                                                                                                                     => ( hoasinduction_lem2v2
                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                 => ~ pushprop_lthm )
                                                                                                                                                             => ( apinj2
                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                                                                         => ( apinj1
                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                                 => ( hoasinduction_lem3v2a
                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                             => ( hoasapinj1_lthm
                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                                                                                       => ( X1 = X2 ) )
                                                                                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                         => ( hoaslaminj_lthm
                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                    ( X2
                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                               => ( ! [X1: term,X2: term] :
                                                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                                                        = ( lam @ X2 ) )
                                                                                                                                                     => ( X1 = X2 ) )
                                                                                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                     => ( axvarcons
                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                                 => ( axscons
                                                                                                                                   != ( ! [X1: subst] :
                                                                                                                                          ( X1
                                                                                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                             => ~ hoasinduction_lem2v2_gthm )
                                                                                                                         => ( axidr != sP17 ) )
                                                                                                                     => ( pushprop_lem1 != sP12 ) )
                                                                                                                 => ( laminj
                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                            = ( lam @ X2 ) )
                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                             => ( hoasinduction_lem3_lthm
                                                                                                               != ( ! [X1: term] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                 => ( sP40
                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                         => ( pushprop_lem0 != sP41 ) )
                                                                                                     => ~ pushprop_gthm )
                                                                                                 => ~ axabs )
                                                                                             => ( hoasinduction_lem3v2a_lthm
                                                                                               != ( sP22
                                                                                                 => ( ! [X1: term] :
                                                                                                        ( X1
                                                                                                        = ( sub @ X1 @ id ) )
                                                                                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                       => ~ ! [X5: term] :
                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X2 @ X4 )
                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X2 @ X4 )
                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                         => ~ hoasinduction_lem2_lthm )
                                                                                     => ~ hoasapinj2_gthm )
                                                                                 => ~ hoasinduction_lem1_lthm )
                                                                             => lamnotap )
                                                                         => ~ hoasapinj1_gthm )
                                                                     => ~ hoaslamnotvar )
                                                                 => ( axidl != sP4 ) )
                                                             => ~ hoaslaminj_gthm )
                                                         => ( induction2_lthm
                                                           != ( ! [X1: term] :
                                                                  ( X1
                                                                  = ( sub @ X1 @ id ) )
                                                             => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                ( ~ ( ( X1 @ X4 )
                                                                                   => ~ ( X1 @ X5 ) )
                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ! [X5: term] :
                                                                                      ( ( X1 @ X5 )
                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( var @ X4 )
                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                               => ! [X1: term > $o,X2: term] :
                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                ( ( var @ X3 )
                                                                               => ( X1 @ X3 ) )
                                                                           => ~ ! [X3: term,X4: term] :
                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                     => ~ ( X1 @ X4 ) )
                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                       => ~ ! [X3: term] :
                                                                              ( ! [X4: term] :
                                                                                  ( ( X1 @ X4 )
                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                   => ( X1 @ X2 ) ) ) ) ) )
                                                     => ( hoasinduction_lem0_lthm != sP10 ) )
                                                 => ( substmonoid_lthm
                                                   != ( sP4
                                                     => ( sP17
                                                       => ~ sP11 ) ) ) )
                                             => ~ pushprop )
                                         => ~ hoasinduction_lem3_gthm )
                                     => ~ hoasinduction_lem2_gthm )
                                 => ( hoasinduction_lem3b != sP9 ) )
                             => ( substmonoid != ( ~ sP11 ) ) )
                         => ~ lamnotvar )
                     => ( hoasinduction_lem3a
                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ! [X3: subst > term > term] :
                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                         => ~ ! [X4: term] :
                                                ( ( X1 @ id @ X4 @ id )
                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                 => ~ ! [X3: term] :
                                        ( ( X1 @ id @ X3 @ id )
                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                 => ~ hoasinduction_lem1_gthm )
             => ( hoasinduction_no_psi_cond
               != ( ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ id @ X3 @ id )
                                 => ~ ( X1 @ id @ X4 @ id ) )
                             => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                         => ~ ! [X3: subst > term > term] :
                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X1 @ id @ X4 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                     => ( X1 @ id @ X2 @ id ) ) ) ) )
         => ~ induction2_gthm )
     => ~ pushprop_lem2v2_lthm ),
    introduced(assumption,[]) ).

thf(h46,assumption,
    ~ ( hoasvar @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) ),
    introduced(assumption,[]) ).

thf(h47,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                                                                                 => ( induction
                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                 => ( sP40
                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                         => ~ axclos )
                                                                                                                                                                     => ~ axassoc )
                                                                                                                                                                 => ( hoasinduction_lem2v2
                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                             => ~ pushprop_lthm )
                                                                                                                                                         => ( apinj2
                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                                                                     => ( apinj1
                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                             => ( hoasinduction_lem3v2a
                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                         => ( hoasapinj1_lthm
                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                                                                                   => ( X1 = X2 ) )
                                                                                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                     => ( hoaslaminj_lthm
                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                ( X2
                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                           => ( ! [X1: term,X2: term] :
                                                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                                                    = ( lam @ X2 ) )
                                                                                                                                                 => ( X1 = X2 ) )
                                                                                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                                 => ( axvarcons
                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                             => ( axscons
                                                                                                                               != ( ! [X1: subst] :
                                                                                                                                      ( X1
                                                                                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                         => ~ hoasinduction_lem2v2_gthm )
                                                                                                                     => ( axidr != sP17 ) )
                                                                                                                 => ( pushprop_lem1 != sP12 ) )
                                                                                                             => ( laminj
                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                        = ( lam @ X2 ) )
                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                         => ( hoasinduction_lem3_lthm
                                                                                                           != ( ! [X1: term] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                             => ( sP40
                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                       => ~ ! [X3: term] :
                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                     => ( pushprop_lem0 != sP41 ) )
                                                                                                 => ~ pushprop_gthm )
                                                                                             => ~ axabs )
                                                                                         => ( hoasinduction_lem3v2a_lthm
                                                                                           != ( sP22
                                                                                             => ( ! [X1: term] :
                                                                                                    ( X1
                                                                                                    = ( sub @ X1 @ id ) )
                                                                                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                   => ~ ! [X5: term] :
                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X2 @ X4 )
                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X2 @ X4 )
                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                     => ~ hoasinduction_lem2_lthm )
                                                                                 => ~ hoasapinj2_gthm )
                                                                             => ~ hoasinduction_lem1_lthm )
                                                                         => lamnotap )
                                                                     => ~ hoasapinj1_gthm )
                                                                 => ~ hoaslamnotvar )
                                                             => ( axidl != sP4 ) )
                                                         => ~ hoaslaminj_gthm )
                                                     => ( induction2_lthm
                                                       != ( ! [X1: term] :
                                                              ( X1
                                                              = ( sub @ X1 @ id ) )
                                                         => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                            ( ~ ( ( X1 @ X4 )
                                                                               => ~ ( X1 @ X5 ) )
                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ! [X5: term] :
                                                                                  ( ( X1 @ X5 )
                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( var @ X4 )
                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                           => ! [X1: term > $o,X2: term] :
                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                            ( ( var @ X3 )
                                                                           => ( X1 @ X3 ) )
                                                                       => ~ ! [X3: term,X4: term] :
                                                                              ( ~ ( ( X1 @ X3 )
                                                                                 => ~ ( X1 @ X4 ) )
                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                   => ~ ! [X3: term] :
                                                                          ( ! [X4: term] :
                                                                              ( ( X1 @ X4 )
                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                               => ( X1 @ X2 ) ) ) ) ) )
                                                 => ( hoasinduction_lem0_lthm != sP10 ) )
                                             => ( substmonoid_lthm
                                               != ( sP4
                                                 => ( sP17
                                                   => ~ sP11 ) ) ) )
                                         => ~ pushprop )
                                     => ~ hoasinduction_lem3_gthm )
                                 => ~ hoasinduction_lem2_gthm )
                             => ( hoasinduction_lem3b != sP9 ) )
                         => ( substmonoid != ( ~ sP11 ) ) )
                     => ~ lamnotvar )
                 => ( hoasinduction_lem3a
                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ! [X3: subst > term > term] :
                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                     => ~ ! [X4: term] :
                                            ( ( X1 @ id @ X4 @ id )
                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                             => ~ ! [X3: term] :
                                    ( ( X1 @ id @ X3 @ id )
                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
             => ~ hoasinduction_lem1_gthm )
         => ( hoasinduction_no_psi_cond
           != ( ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ id @ X3 @ id )
                             => ~ ( X1 @ id @ X4 @ id ) )
                         => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                     => ~ ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                 => ( X1 @ id @ X2 @ id ) ) ) ) )
     => ~ induction2_gthm ),
    introduced(assumption,[]) ).

thf(h48,assumption,
    pushprop_lem2v2_lthm,
    introduced(assumption,[]) ).

thf(h49,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                                                                                 => ~ axapp )
                                                                                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                                                                                             => ( induction
                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                             => ( sP40
                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                     => ~ axclos )
                                                                                                                                                                 => ~ axassoc )
                                                                                                                                                             => ( hoasinduction_lem2v2
                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                         => ~ pushprop_lthm )
                                                                                                                                                     => ( apinj2
                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                                                                 => ( apinj1
                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                         => ( hoasinduction_lem3v2a
                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                     => ( hoasapinj1_lthm
                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                                                                                  = ( ap @ X2 @ X4 ) )
                                                                                                                                               => ( X1 = X2 ) )
                                                                                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                                                                                 => ( hoaslaminj_lthm
                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                            ( X2
                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                       => ( ! [X1: term,X2: term] :
                                                                                                                                              ( ( ( lam @ X1 )
                                                                                                                                                = ( lam @ X2 ) )
                                                                                                                                             => ( X1 = X2 ) )
                                                                                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                             => ( axvarcons
                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                         => ( axscons
                                                                                                                           != ( ! [X1: subst] :
                                                                                                                                  ( X1
                                                                                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                     => ~ hoasinduction_lem2v2_gthm )
                                                                                                                 => ( axidr != sP17 ) )
                                                                                                             => ( pushprop_lem1 != sP12 ) )
                                                                                                         => ( laminj
                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                    = ( lam @ X2 ) )
                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                     => ( hoasinduction_lem3_lthm
                                                                                                       != ( ! [X1: term] :
                                                                                                              ( X1
                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                         => ( sP40
                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                   => ~ ! [X3: term] :
                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                 => ( pushprop_lem0 != sP41 ) )
                                                                                             => ~ pushprop_gthm )
                                                                                         => ~ axabs )
                                                                                     => ( hoasinduction_lem3v2a_lthm
                                                                                       != ( sP22
                                                                                         => ( ! [X1: term] :
                                                                                                ( X1
                                                                                                = ( sub @ X1 @ id ) )
                                                                                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                               => ~ ! [X5: term] :
                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X2 @ X4 )
                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X2 @ X4 )
                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                                 => ~ hoasinduction_lem2_lthm )
                                                                             => ~ hoasapinj2_gthm )
                                                                         => ~ hoasinduction_lem1_lthm )
                                                                     => lamnotap )
                                                                 => ~ hoasapinj1_gthm )
                                                             => ~ hoaslamnotvar )
                                                         => ( axidl != sP4 ) )
                                                     => ~ hoaslaminj_gthm )
                                                 => ( induction2_lthm
                                                   != ( ! [X1: term] :
                                                          ( X1
                                                          = ( sub @ X1 @ id ) )
                                                     => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                        ( ~ ( ( X1 @ X4 )
                                                                           => ~ ( X1 @ X5 ) )
                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ! [X5: term] :
                                                                              ( ( X1 @ X5 )
                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( var @ X4 )
                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                       => ! [X1: term > $o,X2: term] :
                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                        ( ( var @ X3 )
                                                                       => ( X1 @ X3 ) )
                                                                   => ~ ! [X3: term,X4: term] :
                                                                          ( ~ ( ( X1 @ X3 )
                                                                             => ~ ( X1 @ X4 ) )
                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                               => ~ ! [X3: term] :
                                                                      ( ! [X4: term] :
                                                                          ( ( X1 @ X4 )
                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                           => ( X1 @ X2 ) ) ) ) ) )
                                             => ( hoasinduction_lem0_lthm != sP10 ) )
                                         => ( substmonoid_lthm
                                           != ( sP4
                                             => ( sP17
                                               => ~ sP11 ) ) ) )
                                     => ~ pushprop )
                                 => ~ hoasinduction_lem3_gthm )
                             => ~ hoasinduction_lem2_gthm )
                         => ( hoasinduction_lem3b != sP9 ) )
                     => ( substmonoid != ( ~ sP11 ) ) )
                 => ~ lamnotvar )
             => ( hoasinduction_lem3a
               != ( ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ! [X3: subst > term > term] :
                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                 => ~ ! [X4: term] :
                                        ( ( X1 @ id @ X4 @ id )
                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                         => ~ ! [X3: term] :
                                ( ( X1 @ id @ X3 @ id )
                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
         => ~ hoasinduction_lem1_gthm )
     => ( hoasinduction_no_psi_cond
       != ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ! [X3: term,X4: term] :
                      ( ~ ( ( X1 @ id @ X3 @ id )
                         => ~ ( X1 @ id @ X4 @ id ) )
                     => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h50,assumption,
    induction2_gthm,
    introduced(assumption,[]) ).

thf(h51,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                                                                                             => ~ axapp )
                                                                                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                             => ~ ulamvarind )
                                                                                                                                                                                                         => ( induction
                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                         => ( sP40
                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                                 => ~ termmset_gthm )
                                                                                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                                 => ~ axclos )
                                                                                                                                                             => ~ axassoc )
                                                                                                                                                         => ( hoasinduction_lem2v2
                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                     => ~ pushprop_lthm )
                                                                                                                                                 => ( apinj2
                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                                                                             => ( apinj1
                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                     => ( hoasinduction_lem3v2a
                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                                 => ( hoasapinj1_lthm
                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                            ( ( ( ap @ X1 @ X3 )
                                                                                                                                              = ( ap @ X2 @ X4 ) )
                                                                                                                                           => ( X1 = X2 ) )
                                                                                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                                                                                             => ( hoaslaminj_lthm
                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                        ( X2
                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                   => ( ! [X1: term,X2: term] :
                                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                                            = ( lam @ X2 ) )
                                                                                                                                         => ( X1 = X2 ) )
                                                                                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                         => ( axvarcons
                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                     => ( axscons
                                                                                                                       != ( ! [X1: subst] :
                                                                                                                              ( X1
                                                                                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                                 => ~ hoasinduction_lem2v2_gthm )
                                                                                                             => ( axidr != sP17 ) )
                                                                                                         => ( pushprop_lem1 != sP12 ) )
                                                                                                     => ( laminj
                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                              ( ( ( lam @ X1 )
                                                                                                                = ( lam @ X2 ) )
                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                 => ( hoasinduction_lem3_lthm
                                                                                                   != ( ! [X1: term] :
                                                                                                          ( X1
                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                     => ( sP40
                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                               => ~ ! [X3: term] :
                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                             => ( pushprop_lem0 != sP41 ) )
                                                                                         => ~ pushprop_gthm )
                                                                                     => ~ axabs )
                                                                                 => ( hoasinduction_lem3v2a_lthm
                                                                                   != ( sP22
                                                                                     => ( ! [X1: term] :
                                                                                            ( X1
                                                                                            = ( sub @ X1 @ id ) )
                                                                                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                           => ~ ! [X5: term] :
                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X2 @ X4 )
                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X2 @ X4 )
                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                             => ~ hoasinduction_lem2_lthm )
                                                                         => ~ hoasapinj2_gthm )
                                                                     => ~ hoasinduction_lem1_lthm )
                                                                 => lamnotap )
                                                             => ~ hoasapinj1_gthm )
                                                         => ~ hoaslamnotvar )
                                                     => ( axidl != sP4 ) )
                                                 => ~ hoaslaminj_gthm )
                                             => ( induction2_lthm
                                               != ( ! [X1: term] :
                                                      ( X1
                                                      = ( sub @ X1 @ id ) )
                                                 => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                    ( ~ ( ( X1 @ X4 )
                                                                       => ~ ( X1 @ X5 ) )
                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ! [X5: term] :
                                                                          ( ( X1 @ X5 )
                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( var @ X4 )
                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                                   => ! [X1: term > $o,X2: term] :
                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                    ( ( var @ X3 )
                                                                   => ( X1 @ X3 ) )
                                                               => ~ ! [X3: term,X4: term] :
                                                                      ( ~ ( ( X1 @ X3 )
                                                                         => ~ ( X1 @ X4 ) )
                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                           => ~ ! [X3: term] :
                                                                  ( ! [X4: term] :
                                                                      ( ( X1 @ X4 )
                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                       => ( X1 @ X2 ) ) ) ) ) )
                                         => ( hoasinduction_lem0_lthm != sP10 ) )
                                     => ( substmonoid_lthm
                                       != ( sP4
                                         => ( sP17
                                           => ~ sP11 ) ) ) )
                                 => ~ pushprop )
                             => ~ hoasinduction_lem3_gthm )
                         => ~ hoasinduction_lem2_gthm )
                     => ( hoasinduction_lem3b != sP9 ) )
                 => ( substmonoid != ( ~ sP11 ) ) )
             => ~ lamnotvar )
         => ( hoasinduction_lem3a
           != ( ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                     => ~ ! [X3: term] :
                            ( ( X1 @ id @ X3 @ id )
                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
     => ~ hoasinduction_lem1_gthm ),
    introduced(assumption,[]) ).

thf(h52,assumption,
    ( hoasinduction_no_psi_cond
    = ( ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ! [X3: term,X4: term] :
                  ( ~ ( ( X1 @ id @ X3 @ id )
                     => ~ ( X1 @ id @ X4 @ id ) )
                 => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
             => ~ ! [X3: subst > term > term] :
                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                       => ~ ! [X4: term] :
                              ( ( X1 @ id @ X4 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
         => ( X1 @ id @ X2 @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h53,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                                                                     => ( induction
                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                     => ( sP40
                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                             => ~ axclos )
                                                                                                                                                         => ~ axassoc )
                                                                                                                                                     => ( hoasinduction_lem2v2
                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                 => ~ pushprop_lthm )
                                                                                                                                             => ( apinj2
                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                                                         => ( apinj1
                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                                 => ( hoasinduction_lem3v2a
                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                             => ( hoasapinj1_lthm
                                                                                                                               != ( ! [X1: term] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                                                                       => ( X1 = X2 ) )
                                                                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                                                                         => ( hoaslaminj_lthm
                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                    ( X2
                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                               => ( ! [X1: term,X2: term] :
                                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                                        = ( lam @ X2 ) )
                                                                                                                                     => ( X1 = X2 ) )
                                                                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                     => ( axvarcons
                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                                 => ( axscons
                                                                                                                   != ( ! [X1: subst] :
                                                                                                                          ( X1
                                                                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                             => ~ hoasinduction_lem2v2_gthm )
                                                                                                         => ( axidr != sP17 ) )
                                                                                                     => ( pushprop_lem1 != sP12 ) )
                                                                                                 => ( laminj
                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                          ( ( ( lam @ X1 )
                                                                                                            = ( lam @ X2 ) )
                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                             => ( hoasinduction_lem3_lthm
                                                                                               != ( ! [X1: term] :
                                                                                                      ( X1
                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                 => ( sP40
                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                           => ~ ! [X3: term] :
                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                         => ( pushprop_lem0 != sP41 ) )
                                                                                     => ~ pushprop_gthm )
                                                                                 => ~ axabs )
                                                                             => ( hoasinduction_lem3v2a_lthm
                                                                               != ( sP22
                                                                                 => ( ! [X1: term] :
                                                                                        ( X1
                                                                                        = ( sub @ X1 @ id ) )
                                                                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                       => ~ ! [X5: term] :
                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X2 @ X4 )
                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X2 @ X4 )
                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                         => ~ hoasinduction_lem2_lthm )
                                                                     => ~ hoasapinj2_gthm )
                                                                 => ~ hoasinduction_lem1_lthm )
                                                             => lamnotap )
                                                         => ~ hoasapinj1_gthm )
                                                     => ~ hoaslamnotvar )
                                                 => ( axidl != sP4 ) )
                                             => ~ hoaslaminj_gthm )
                                         => ( induction2_lthm
                                           != ( ! [X1: term] :
                                                  ( X1
                                                  = ( sub @ X1 @ id ) )
                                             => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                ( ~ ( ( X1 @ X4 )
                                                                   => ~ ( X1 @ X5 ) )
                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ! [X5: term] :
                                                                      ( ( X1 @ X5 )
                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( var @ X4 )
                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                               => ! [X1: term > $o,X2: term] :
                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                ( ( var @ X3 )
                                                               => ( X1 @ X3 ) )
                                                           => ~ ! [X3: term,X4: term] :
                                                                  ( ~ ( ( X1 @ X3 )
                                                                     => ~ ( X1 @ X4 ) )
                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                       => ~ ! [X3: term] :
                                                              ( ! [X4: term] :
                                                                  ( ( X1 @ X4 )
                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                   => ( X1 @ X2 ) ) ) ) ) )
                                     => ( hoasinduction_lem0_lthm != sP10 ) )
                                 => ( substmonoid_lthm
                                   != ( sP4
                                     => ( sP17
                                       => ~ sP11 ) ) ) )
                             => ~ pushprop )
                         => ~ hoasinduction_lem3_gthm )
                     => ~ hoasinduction_lem2_gthm )
                 => ( hoasinduction_lem3b != sP9 ) )
             => ( substmonoid != ( ~ sP11 ) ) )
         => ~ lamnotvar )
     => ( hoasinduction_lem3a
       != ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ! [X3: subst > term > term] :
                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                         => ~ ! [X4: term] :
                                ( ( X1 @ id @ X4 @ id )
                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ id @ X3 @ id )
                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h54,assumption,
    hoasinduction_lem1_gthm,
    introduced(assumption,[]) ).

thf(h55,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                                                                 => ( induction
                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                 => ( sP40
                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                         => ~ axclos )
                                                                                                                                                     => ~ axassoc )
                                                                                                                                                 => ( hoasinduction_lem2v2
                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                             => ~ pushprop_lthm )
                                                                                                                                         => ( apinj2
                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                                                     => ( apinj1
                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                             => ( hoasinduction_lem3v2a
                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                         => ( hoasapinj1_lthm
                                                                                                                           != ( ! [X1: term] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                                                                   => ( X1 = X2 ) )
                                                                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                                                                     => ( hoaslaminj_lthm
                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                ( X2
                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                           => ( ! [X1: term,X2: term] :
                                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                                    = ( lam @ X2 ) )
                                                                                                                                 => ( X1 = X2 ) )
                                                                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                                 => ( axvarcons
                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                             => ( axscons
                                                                                                               != ( ! [X1: subst] :
                                                                                                                      ( X1
                                                                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                         => ~ hoasinduction_lem2v2_gthm )
                                                                                                     => ( axidr != sP17 ) )
                                                                                                 => ( pushprop_lem1 != sP12 ) )
                                                                                             => ( laminj
                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                      ( ( ( lam @ X1 )
                                                                                                        = ( lam @ X2 ) )
                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                         => ( hoasinduction_lem3_lthm
                                                                                           != ( ! [X1: term] :
                                                                                                  ( X1
                                                                                                  = ( sub @ X1 @ id ) )
                                                                                             => ( sP40
                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                     => ~ ! [X4: term] :
                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                       => ~ ! [X3: term] :
                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                     => ( pushprop_lem0 != sP41 ) )
                                                                                 => ~ pushprop_gthm )
                                                                             => ~ axabs )
                                                                         => ( hoasinduction_lem3v2a_lthm
                                                                           != ( sP22
                                                                             => ( ! [X1: term] :
                                                                                    ( X1
                                                                                    = ( sub @ X1 @ id ) )
                                                                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                   => ~ ! [X5: term] :
                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X2 @ X4 )
                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X2 @ X4 )
                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                     => ~ hoasinduction_lem2_lthm )
                                                                 => ~ hoasapinj2_gthm )
                                                             => ~ hoasinduction_lem1_lthm )
                                                         => lamnotap )
                                                     => ~ hoasapinj1_gthm )
                                                 => ~ hoaslamnotvar )
                                             => ( axidl != sP4 ) )
                                         => ~ hoaslaminj_gthm )
                                     => ( induction2_lthm
                                       != ( ! [X1: term] :
                                              ( X1
                                              = ( sub @ X1 @ id ) )
                                         => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                            ( ~ ( ( X1 @ X4 )
                                                               => ~ ( X1 @ X5 ) )
                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ! [X5: term] :
                                                                  ( ( X1 @ X5 )
                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( var @ X4 )
                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                               => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                           => ! [X1: term > $o,X2: term] :
                                                ( ~ ( ~ ( ! [X3: term] :
                                                            ( ( var @ X3 )
                                                           => ( X1 @ X3 ) )
                                                       => ~ ! [X3: term,X4: term] :
                                                              ( ~ ( ( X1 @ X3 )
                                                                 => ~ ( X1 @ X4 ) )
                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                   => ~ ! [X3: term] :
                                                          ( ! [X4: term] :
                                                              ( ( X1 @ X4 )
                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                               => ( X1 @ X2 ) ) ) ) ) )
                                 => ( hoasinduction_lem0_lthm != sP10 ) )
                             => ( substmonoid_lthm
                               != ( sP4
                                 => ( sP17
                                   => ~ sP11 ) ) ) )
                         => ~ pushprop )
                     => ~ hoasinduction_lem3_gthm )
                 => ~ hoasinduction_lem2_gthm )
             => ( hoasinduction_lem3b != sP9 ) )
         => ( substmonoid != ( ~ sP11 ) ) )
     => ~ lamnotvar ),
    introduced(assumption,[]) ).

thf(h56,assumption,
    ( hoasinduction_lem3a
    = ( ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ! [X3: subst > term > term] :
                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                     => ~ ! [X4: term] :
                            ( ( X1 @ id @ X4 @ id )
                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
             => ~ ! [X3: term] :
                    ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h57,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                                                                 => ~ axapp )
                                                                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                                                                             => ( induction
                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                             => ( sP40
                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                     => ~ axclos )
                                                                                                                                                 => ~ axassoc )
                                                                                                                                             => ( hoasinduction_lem2v2
                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                         => ~ pushprop_lthm )
                                                                                                                                     => ( apinj2
                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                                                 => ( apinj1
                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                         => ( hoasinduction_lem3v2a
                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                     => ( hoasapinj1_lthm
                                                                                                                       != ( ! [X1: term] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                                                                  = ( ap @ X2 @ X4 ) )
                                                                                                                               => ( X1 = X2 ) )
                                                                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                                                                 => ( hoaslaminj_lthm
                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                            ( X2
                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                       => ( ! [X1: term,X2: term] :
                                                                                                                              ( ( ( lam @ X1 )
                                                                                                                                = ( lam @ X2 ) )
                                                                                                                             => ( X1 = X2 ) )
                                                                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                             => ( axvarcons
                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                         => ( axscons
                                                                                                           != ( ! [X1: subst] :
                                                                                                                  ( X1
                                                                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                     => ~ hoasinduction_lem2v2_gthm )
                                                                                                 => ( axidr != sP17 ) )
                                                                                             => ( pushprop_lem1 != sP12 ) )
                                                                                         => ( laminj
                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                  ( ( ( lam @ X1 )
                                                                                                    = ( lam @ X2 ) )
                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                     => ( hoasinduction_lem3_lthm
                                                                                       != ( ! [X1: term] :
                                                                                              ( X1
                                                                                              = ( sub @ X1 @ id ) )
                                                                                         => ( sP40
                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                 => ~ ! [X4: term] :
                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                   => ~ ! [X3: term] :
                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                 => ( pushprop_lem0 != sP41 ) )
                                                                             => ~ pushprop_gthm )
                                                                         => ~ axabs )
                                                                     => ( hoasinduction_lem3v2a_lthm
                                                                       != ( sP22
                                                                         => ( ! [X1: term] :
                                                                                ( X1
                                                                                = ( sub @ X1 @ id ) )
                                                                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                               => ~ ! [X5: term] :
                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X2 @ X4 )
                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X2 @ X4 )
                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                                 => ~ hoasinduction_lem2_lthm )
                                                             => ~ hoasapinj2_gthm )
                                                         => ~ hoasinduction_lem1_lthm )
                                                     => lamnotap )
                                                 => ~ hoasapinj1_gthm )
                                             => ~ hoaslamnotvar )
                                         => ( axidl != sP4 ) )
                                     => ~ hoaslaminj_gthm )
                                 => ( induction2_lthm
                                   != ( ! [X1: term] :
                                          ( X1
                                          = ( sub @ X1 @ id ) )
                                     => ( ! [X1: term > $o,X2: term,X3: subst] :
                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                        ( ~ ( ( X1 @ X4 )
                                                           => ~ ( X1 @ X5 ) )
                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ! [X5: term] :
                                                              ( ( X1 @ X5 )
                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( var @ X4 )
                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                           => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                       => ! [X1: term > $o,X2: term] :
                                            ( ~ ( ~ ( ! [X3: term] :
                                                        ( ( var @ X3 )
                                                       => ( X1 @ X3 ) )
                                                   => ~ ! [X3: term,X4: term] :
                                                          ( ~ ( ( X1 @ X3 )
                                                             => ~ ( X1 @ X4 ) )
                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                               => ~ ! [X3: term] :
                                                      ( ! [X4: term] :
                                                          ( ( X1 @ X4 )
                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                           => ( X1 @ X2 ) ) ) ) ) )
                             => ( hoasinduction_lem0_lthm != sP10 ) )
                         => ( substmonoid_lthm
                           != ( sP4
                             => ( sP17
                               => ~ sP11 ) ) ) )
                     => ~ pushprop )
                 => ~ hoasinduction_lem3_gthm )
             => ~ hoasinduction_lem2_gthm )
         => ( hoasinduction_lem3b != sP9 ) )
     => ( substmonoid != ( ~ sP11 ) ) ),
    introduced(assumption,[]) ).

thf(h58,assumption,
    lamnotvar,
    introduced(assumption,[]) ).

thf(h59,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                                                                             => ~ axapp )
                                                                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                             => ~ ulamvarind )
                                                                                                                                                                                         => ( induction
                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                                              ( X1
                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                         => ( sP40
                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                                 => ~ termmset_gthm )
                                                                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                                                                 => ~ axclos )
                                                                                                                                             => ~ axassoc )
                                                                                                                                         => ( hoasinduction_lem2v2
                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                     => ~ pushprop_lthm )
                                                                                                                                 => ( apinj2
                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                                                             => ( apinj1
                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                     => ( hoasinduction_lem3v2a
                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                            ( ( X2 @ X4 )
                                                                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                                 => ( hoasapinj1_lthm
                                                                                                                   != ( ! [X1: term] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                            ( ( ( ap @ X1 @ X3 )
                                                                                                                              = ( ap @ X2 @ X4 ) )
                                                                                                                           => ( X1 = X2 ) )
                                                                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                                                                             => ( hoaslaminj_lthm
                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                        ( X2
                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                   => ( ! [X1: term,X2: term] :
                                                                                                                          ( ( ( lam @ X1 )
                                                                                                                            = ( lam @ X2 ) )
                                                                                                                         => ( X1 = X2 ) )
                                                                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                         => ( axvarcons
                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                     => ( axscons
                                                                                                       != ( ! [X1: subst] :
                                                                                                              ( X1
                                                                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                                 => ~ hoasinduction_lem2v2_gthm )
                                                                                             => ( axidr != sP17 ) )
                                                                                         => ( pushprop_lem1 != sP12 ) )
                                                                                     => ( laminj
                                                                                       != ( ! [X1: term,X2: term] :
                                                                                              ( ( ( lam @ X1 )
                                                                                                = ( lam @ X2 ) )
                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                 => ( hoasinduction_lem3_lthm
                                                                                   != ( ! [X1: term] :
                                                                                          ( X1
                                                                                          = ( sub @ X1 @ id ) )
                                                                                     => ( sP40
                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                             => ~ ! [X4: term] :
                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                               => ~ ! [X3: term] :
                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                             => ( pushprop_lem0 != sP41 ) )
                                                                         => ~ pushprop_gthm )
                                                                     => ~ axabs )
                                                                 => ( hoasinduction_lem3v2a_lthm
                                                                   != ( sP22
                                                                     => ( ! [X1: term] :
                                                                            ( X1
                                                                            = ( sub @ X1 @ id ) )
                                                                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                           => ~ ! [X5: term] :
                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X2 @ X4 )
                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X2 @ X4 )
                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                             => ~ hoasinduction_lem2_lthm )
                                                         => ~ hoasapinj2_gthm )
                                                     => ~ hoasinduction_lem1_lthm )
                                                 => lamnotap )
                                             => ~ hoasapinj1_gthm )
                                         => ~ hoaslamnotvar )
                                     => ( axidl != sP4 ) )
                                 => ~ hoaslaminj_gthm )
                             => ( induction2_lthm
                               != ( ! [X1: term] :
                                      ( X1
                                      = ( sub @ X1 @ id ) )
                                 => ( ! [X1: term > $o,X2: term,X3: subst] :
                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                    ( ~ ( ( X1 @ X4 )
                                                       => ~ ( X1 @ X5 ) )
                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ! [X5: term] :
                                                          ( ( X1 @ X5 )
                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( var @ X4 )
                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                       => ( X1 @ ( sub @ X2 @ X3 ) ) )
                                   => ! [X1: term > $o,X2: term] :
                                        ( ~ ( ~ ( ! [X3: term] :
                                                    ( ( var @ X3 )
                                                   => ( X1 @ X3 ) )
                                               => ~ ! [X3: term,X4: term] :
                                                      ( ~ ( ( X1 @ X3 )
                                                         => ~ ( X1 @ X4 ) )
                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                           => ~ ! [X3: term] :
                                                  ( ! [X4: term] :
                                                      ( ( X1 @ X4 )
                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                       => ( X1 @ X2 ) ) ) ) ) )
                         => ( hoasinduction_lem0_lthm != sP10 ) )
                     => ( substmonoid_lthm
                       != ( sP4
                         => ( sP17
                           => ~ sP11 ) ) ) )
                 => ~ pushprop )
             => ~ hoasinduction_lem3_gthm )
         => ~ hoasinduction_lem2_gthm )
     => ( hoasinduction_lem3b != sP9 ) ),
    introduced(assumption,[]) ).

thf(h60,assumption,
    ( substmonoid = ( ~ sP11 ) ),
    introduced(assumption,[]) ).

thf(h61,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                                                     => ( induction
                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                                          ( X1
                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                     => ( sP40
                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                                                             => ~ axclos )
                                                                                                                                         => ~ axassoc )
                                                                                                                                     => ( hoasinduction_lem2v2
                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                 => ~ pushprop_lthm )
                                                                                                                             => ( apinj2
                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                                         => ( apinj1
                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                                                                 => ( hoasinduction_lem3v2a
                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                        ( ( X2 @ X4 )
                                                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                             => ( hoasapinj1_lthm
                                                                                                               != ( ! [X1: term] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                                                       => ( X1 = X2 ) )
                                                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                                                         => ( hoaslaminj_lthm
                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                    ( X2
                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                               => ( ! [X1: term,X2: term] :
                                                                                                                      ( ( ( lam @ X1 )
                                                                                                                        = ( lam @ X2 ) )
                                                                                                                     => ( X1 = X2 ) )
                                                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                     => ( axvarcons
                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                              ( X1
                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                                 => ( axscons
                                                                                                   != ( ! [X1: subst] :
                                                                                                          ( X1
                                                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                             => ~ hoasinduction_lem2v2_gthm )
                                                                                         => ( axidr != sP17 ) )
                                                                                     => ( pushprop_lem1 != sP12 ) )
                                                                                 => ( laminj
                                                                                   != ( ! [X1: term,X2: term] :
                                                                                          ( ( ( lam @ X1 )
                                                                                            = ( lam @ X2 ) )
                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                             => ( hoasinduction_lem3_lthm
                                                                               != ( ! [X1: term] :
                                                                                      ( X1
                                                                                      = ( sub @ X1 @ id ) )
                                                                                 => ( sP40
                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                         => ~ ! [X4: term] :
                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                           => ~ ! [X3: term] :
                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                         => ( pushprop_lem0 != sP41 ) )
                                                                     => ~ pushprop_gthm )
                                                                 => ~ axabs )
                                                             => ( hoasinduction_lem3v2a_lthm
                                                               != ( sP22
                                                                 => ( ! [X1: term] :
                                                                        ( X1
                                                                        = ( sub @ X1 @ id ) )
                                                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                       => ~ ! [X5: term] :
                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X2 @ X4 )
                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X2 @ X4 )
                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                         => ~ hoasinduction_lem2_lthm )
                                                     => ~ hoasapinj2_gthm )
                                                 => ~ hoasinduction_lem1_lthm )
                                             => lamnotap )
                                         => ~ hoasapinj1_gthm )
                                     => ~ hoaslamnotvar )
                                 => ( axidl != sP4 ) )
                             => ~ hoaslaminj_gthm )
                         => ( induction2_lthm
                           != ( ! [X1: term] :
                                  ( X1
                                  = ( sub @ X1 @ id ) )
                             => ( ! [X1: term > $o,X2: term,X3: subst] :
                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                ( ~ ( ( X1 @ X4 )
                                                   => ~ ( X1 @ X5 ) )
                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ! [X5: term] :
                                                      ( ( X1 @ X5 )
                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( var @ X4 )
                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                   => ( X1 @ ( sub @ X2 @ X3 ) ) )
                               => ! [X1: term > $o,X2: term] :
                                    ( ~ ( ~ ( ! [X3: term] :
                                                ( ( var @ X3 )
                                               => ( X1 @ X3 ) )
                                           => ~ ! [X3: term,X4: term] :
                                                  ( ~ ( ( X1 @ X3 )
                                                     => ~ ( X1 @ X4 ) )
                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                       => ~ ! [X3: term] :
                                              ( ! [X4: term] :
                                                  ( ( X1 @ X4 )
                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                   => ( X1 @ X2 ) ) ) ) ) )
                     => ( hoasinduction_lem0_lthm != sP10 ) )
                 => ( substmonoid_lthm
                   != ( sP4
                     => ( sP17
                       => ~ sP11 ) ) ) )
             => ~ pushprop )
         => ~ hoasinduction_lem3_gthm )
     => ~ hoasinduction_lem2_gthm ),
    introduced(assumption,[]) ).

thf(h62,assumption,
    hoasinduction_lem3b = sP9,
    introduced(assumption,[]) ).

thf(h63,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                                                 => ( induction
                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                                      ( X1
                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                 => ( sP40
                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                                                         => ~ axclos )
                                                                                                                                     => ~ axassoc )
                                                                                                                                 => ( hoasinduction_lem2v2
                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                             => ~ pushprop_lthm )
                                                                                                                         => ( apinj2
                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                                     => ( apinj1
                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                                                                             => ( hoasinduction_lem3v2a
                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                    ( ( X2 @ X4 )
                                                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                ( ( X2 @ X4 )
                                                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                         => ( hoasapinj1_lthm
                                                                                                           != ( ! [X1: term] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                                                   => ( X1 = X2 ) )
                                                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                                                     => ( hoaslaminj_lthm
                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                              ( X1
                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                ( X2
                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                           => ( ! [X1: term,X2: term] :
                                                                                                                  ( ( ( lam @ X1 )
                                                                                                                    = ( lam @ X2 ) )
                                                                                                                 => ( X1 = X2 ) )
                                                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                                 => ( axvarcons
                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                          ( X1
                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                             => ( axscons
                                                                                               != ( ! [X1: subst] :
                                                                                                      ( X1
                                                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                         => ~ hoasinduction_lem2v2_gthm )
                                                                                     => ( axidr != sP17 ) )
                                                                                 => ( pushprop_lem1 != sP12 ) )
                                                                             => ( laminj
                                                                               != ( ! [X1: term,X2: term] :
                                                                                      ( ( ( lam @ X1 )
                                                                                        = ( lam @ X2 ) )
                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                         => ( hoasinduction_lem3_lthm
                                                                           != ( ! [X1: term] :
                                                                                  ( X1
                                                                                  = ( sub @ X1 @ id ) )
                                                                             => ( sP40
                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                     => ~ ! [X4: term] :
                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                       => ~ ! [X3: term] :
                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                     => ( pushprop_lem0 != sP41 ) )
                                                                 => ~ pushprop_gthm )
                                                             => ~ axabs )
                                                         => ( hoasinduction_lem3v2a_lthm
                                                           != ( sP22
                                                             => ( ! [X1: term] :
                                                                    ( X1
                                                                    = ( sub @ X1 @ id ) )
                                                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                   => ~ ! [X5: term] :
                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X2 @ X4 )
                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X2 @ X4 )
                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                     => ~ hoasinduction_lem2_lthm )
                                                 => ~ hoasapinj2_gthm )
                                             => ~ hoasinduction_lem1_lthm )
                                         => lamnotap )
                                     => ~ hoasapinj1_gthm )
                                 => ~ hoaslamnotvar )
                             => ( axidl != sP4 ) )
                         => ~ hoaslaminj_gthm )
                     => ( induction2_lthm
                       != ( ! [X1: term] :
                              ( X1
                              = ( sub @ X1 @ id ) )
                         => ( ! [X1: term > $o,X2: term,X3: subst] :
                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                            ( ~ ( ( X1 @ X4 )
                                               => ~ ( X1 @ X5 ) )
                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ! [X5: term] :
                                                  ( ( X1 @ X5 )
                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( var @ X4 )
                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                               => ( X1 @ ( sub @ X2 @ X3 ) ) )
                           => ! [X1: term > $o,X2: term] :
                                ( ~ ( ~ ( ! [X3: term] :
                                            ( ( var @ X3 )
                                           => ( X1 @ X3 ) )
                                       => ~ ! [X3: term,X4: term] :
                                              ( ~ ( ( X1 @ X3 )
                                                 => ~ ( X1 @ X4 ) )
                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                   => ~ ! [X3: term] :
                                          ( ! [X4: term] :
                                              ( ( X1 @ X4 )
                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                         => ( X1 @ ( lam @ X3 ) ) ) )
                               => ( X1 @ X2 ) ) ) ) ) )
                 => ( hoasinduction_lem0_lthm != sP10 ) )
             => ( substmonoid_lthm
               != ( sP4
                 => ( sP17
                   => ~ sP11 ) ) ) )
         => ~ pushprop )
     => ~ hoasinduction_lem3_gthm ),
    introduced(assumption,[]) ).

thf(h64,assumption,
    hoasinduction_lem2_gthm,
    introduced(assumption,[]) ).

thf(h65,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                                                 => ~ axapp )
                                                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                                                             => ( induction
                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                                  ( X1
                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                             => ( sP40
                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                                                     => ~ axclos )
                                                                                                                                 => ~ axassoc )
                                                                                                                             => ( hoasinduction_lem2v2
                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                         => ~ pushprop_lthm )
                                                                                                                     => ( apinj2
                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                                 => ( apinj1
                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                                                                         => ( hoasinduction_lem3v2a
                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                ( ( X2 @ X4 )
                                                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                     => ~ ! [X4: term] :
                                                                                                                            ( ( X2 @ X4 )
                                                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                     => ( hoasapinj1_lthm
                                                                                                       != ( ! [X1: term] :
                                                                                                              ( X1
                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                                                  = ( ap @ X2 @ X4 ) )
                                                                                                               => ( X1 = X2 ) )
                                                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                                                 => ( hoaslaminj_lthm
                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                          ( X1
                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                            ( X2
                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                       => ( ! [X1: term,X2: term] :
                                                                                                              ( ( ( lam @ X1 )
                                                                                                                = ( lam @ X2 ) )
                                                                                                             => ( X1 = X2 ) )
                                                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                             => ( axvarcons
                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                      ( X1
                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                         => ( axscons
                                                                                           != ( ! [X1: subst] :
                                                                                                  ( X1
                                                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                     => ~ hoasinduction_lem2v2_gthm )
                                                                                 => ( axidr != sP17 ) )
                                                                             => ( pushprop_lem1 != sP12 ) )
                                                                         => ( laminj
                                                                           != ( ! [X1: term,X2: term] :
                                                                                  ( ( ( lam @ X1 )
                                                                                    = ( lam @ X2 ) )
                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                     => ( hoasinduction_lem3_lthm
                                                                       != ( ! [X1: term] :
                                                                              ( X1
                                                                              = ( sub @ X1 @ id ) )
                                                                         => ( sP40
                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                 => ~ ! [X4: term] :
                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                   => ~ ! [X3: term] :
                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                 => ( pushprop_lem0 != sP41 ) )
                                                             => ~ pushprop_gthm )
                                                         => ~ axabs )
                                                     => ( hoasinduction_lem3v2a_lthm
                                                       != ( sP22
                                                         => ( ! [X1: term] :
                                                                ( X1
                                                                = ( sub @ X1 @ id ) )
                                                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                               => ~ ! [X5: term] :
                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X2 @ X4 )
                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X2 @ X4 )
                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                                 => ~ hoasinduction_lem2_lthm )
                                             => ~ hoasapinj2_gthm )
                                         => ~ hoasinduction_lem1_lthm )
                                     => lamnotap )
                                 => ~ hoasapinj1_gthm )
                             => ~ hoaslamnotvar )
                         => ( axidl != sP4 ) )
                     => ~ hoaslaminj_gthm )
                 => ( induction2_lthm
                   != ( ! [X1: term] :
                          ( X1
                          = ( sub @ X1 @ id ) )
                     => ( ! [X1: term > $o,X2: term,X3: subst] :
                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                        ( ~ ( ( X1 @ X4 )
                                           => ~ ( X1 @ X5 ) )
                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ! [X5: term] :
                                              ( ( X1 @ X5 )
                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                         => ( X1 @ ( lam @ X4 ) ) ) )
                               => ~ ! [X4: term] :
                                      ( ( var @ X4 )
                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                           => ( X1 @ ( sub @ X2 @ X3 ) ) )
                       => ! [X1: term > $o,X2: term] :
                            ( ~ ( ~ ( ! [X3: term] :
                                        ( ( var @ X3 )
                                       => ( X1 @ X3 ) )
                                   => ~ ! [X3: term,X4: term] :
                                          ( ~ ( ( X1 @ X3 )
                                             => ~ ( X1 @ X4 ) )
                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                               => ~ ! [X3: term] :
                                      ( ! [X4: term] :
                                          ( ( X1 @ X4 )
                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                     => ( X1 @ ( lam @ X3 ) ) ) )
                           => ( X1 @ X2 ) ) ) ) ) )
             => ( hoasinduction_lem0_lthm != sP10 ) )
         => ( substmonoid_lthm
           != ( sP4
             => ( sP17
               => ~ sP11 ) ) ) )
     => ~ pushprop ),
    introduced(assumption,[]) ).

thf(h66,assumption,
    hoasinduction_lem3_gthm,
    introduced(assumption,[]) ).

thf(h67,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                                                             => ~ axapp )
                                                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                             => ~ ulamvarind )
                                                                                                                                                                         => ( induction
                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                                              ( X1
                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                         => ( sP40
                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                                 => ~ termmset_gthm )
                                                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                                                 => ~ axclos )
                                                                                                                             => ~ axassoc )
                                                                                                                         => ( hoasinduction_lem2v2
                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                     => ~ pushprop_lthm )
                                                                                                                 => ( apinj2
                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                                             => ( apinj1
                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                                                     => ( hoasinduction_lem3v2a
                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                     => ~ ! [X4: term] :
                                                                                                                            ( ( X2 @ X4 )
                                                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                 => ~ ! [X4: term] :
                                                                                                                        ( ( X2 @ X4 )
                                                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                                 => ( hoasapinj1_lthm
                                                                                                   != ( ! [X1: term] :
                                                                                                          ( X1
                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                            ( ( ( ap @ X1 @ X3 )
                                                                                                              = ( ap @ X2 @ X4 ) )
                                                                                                           => ( X1 = X2 ) )
                                                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                                                             => ( hoaslaminj_lthm
                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                      ( X1
                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                        ( X2
                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                   => ( ! [X1: term,X2: term] :
                                                                                                          ( ( ( lam @ X1 )
                                                                                                            = ( lam @ X2 ) )
                                                                                                         => ( X1 = X2 ) )
                                                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                         => ( axvarcons
                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                  ( X1
                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                     => ( axscons
                                                                                       != ( ! [X1: subst] :
                                                                                              ( X1
                                                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                                 => ~ hoasinduction_lem2v2_gthm )
                                                                             => ( axidr != sP17 ) )
                                                                         => ( pushprop_lem1 != sP12 ) )
                                                                     => ( laminj
                                                                       != ( ! [X1: term,X2: term] :
                                                                              ( ( ( lam @ X1 )
                                                                                = ( lam @ X2 ) )
                                                                             => ( X1 = X2 ) ) ) ) )
                                                                 => ( hoasinduction_lem3_lthm
                                                                   != ( ! [X1: term] :
                                                                          ( X1
                                                                          = ( sub @ X1 @ id ) )
                                                                     => ( sP40
                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                             => ~ ! [X4: term] :
                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                               => ~ ! [X3: term] :
                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                             => ( pushprop_lem0 != sP41 ) )
                                                         => ~ pushprop_gthm )
                                                     => ~ axabs )
                                                 => ( hoasinduction_lem3v2a_lthm
                                                   != ( sP22
                                                     => ( ! [X1: term] :
                                                            ( X1
                                                            = ( sub @ X1 @ id ) )
                                                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                           => ~ ! [X5: term] :
                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X2 @ X4 )
                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X2 @ X4 )
                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                             => ~ hoasinduction_lem2_lthm )
                                         => ~ hoasapinj2_gthm )
                                     => ~ hoasinduction_lem1_lthm )
                                 => lamnotap )
                             => ~ hoasapinj1_gthm )
                         => ~ hoaslamnotvar )
                     => ( axidl != sP4 ) )
                 => ~ hoaslaminj_gthm )
             => ( induction2_lthm
               != ( ! [X1: term] :
                      ( X1
                      = ( sub @ X1 @ id ) )
                 => ( ! [X1: term > $o,X2: term,X3: subst] :
                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                    ( ~ ( ( X1 @ X4 )
                                       => ~ ( X1 @ X5 ) )
                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                               => ~ ! [X4: term] :
                                      ( ! [X5: term] :
                                          ( ( X1 @ X5 )
                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                     => ( X1 @ ( lam @ X4 ) ) ) )
                           => ~ ! [X4: term] :
                                  ( ( var @ X4 )
                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                       => ( X1 @ ( sub @ X2 @ X3 ) ) )
                   => ! [X1: term > $o,X2: term] :
                        ( ~ ( ~ ( ! [X3: term] :
                                    ( ( var @ X3 )
                                   => ( X1 @ X3 ) )
                               => ~ ! [X3: term,X4: term] :
                                      ( ~ ( ( X1 @ X3 )
                                         => ~ ( X1 @ X4 ) )
                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                           => ~ ! [X3: term] :
                                  ( ! [X4: term] :
                                      ( ( X1 @ X4 )
                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                 => ( X1 @ ( lam @ X3 ) ) ) )
                       => ( X1 @ X2 ) ) ) ) ) )
         => ( hoasinduction_lem0_lthm != sP10 ) )
     => ( substmonoid_lthm
       != ( sP4
         => ( sP17
           => ~ sP11 ) ) ) ),
    introduced(assumption,[]) ).

thf(h68,assumption,
    pushprop,
    introduced(assumption,[]) ).

thf(h69,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                                     => ( induction
                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                     => ( sP40
                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                                             => ~ axclos )
                                                                                                                         => ~ axassoc )
                                                                                                                     => ( hoasinduction_lem2v2
                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                                 => ~ pushprop_lthm )
                                                                                                             => ( apinj2
                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                                         => ( apinj1
                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                                                 => ( hoasinduction_lem3v2a
                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                 => ~ ! [X4: term] :
                                                                                                                        ( ( X2 @ X4 )
                                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                                             => ~ ! [X4: term] :
                                                                                                                    ( ( X2 @ X4 )
                                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                             => ( hoasapinj1_lthm
                                                                                               != ( ! [X1: term] :
                                                                                                      ( X1
                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                                       => ( X1 = X2 ) )
                                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                                         => ( hoaslaminj_lthm
                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                  ( X1
                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                    ( X2
                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                               => ( ! [X1: term,X2: term] :
                                                                                                      ( ( ( lam @ X1 )
                                                                                                        = ( lam @ X2 ) )
                                                                                                     => ( X1 = X2 ) )
                                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                     => ( axvarcons
                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                              ( X1
                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                                 => ( axscons
                                                                                   != ( ! [X1: subst] :
                                                                                          ( X1
                                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                             => ~ hoasinduction_lem2v2_gthm )
                                                                         => ( axidr != sP17 ) )
                                                                     => ( pushprop_lem1 != sP12 ) )
                                                                 => ( laminj
                                                                   != ( ! [X1: term,X2: term] :
                                                                          ( ( ( lam @ X1 )
                                                                            = ( lam @ X2 ) )
                                                                         => ( X1 = X2 ) ) ) ) )
                                                             => ( hoasinduction_lem3_lthm
                                                               != ( ! [X1: term] :
                                                                      ( X1
                                                                      = ( sub @ X1 @ id ) )
                                                                 => ( sP40
                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                               => ~ ! [X3: subst > term > term] :
                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                         => ~ ! [X4: term] :
                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                           => ~ ! [X3: term] :
                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                         => ( pushprop_lem0 != sP41 ) )
                                                     => ~ pushprop_gthm )
                                                 => ~ axabs )
                                             => ( hoasinduction_lem3v2a_lthm
                                               != ( sP22
                                                 => ( ! [X1: term] :
                                                        ( X1
                                                        = ( sub @ X1 @ id ) )
                                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                       => ~ ! [X5: term] :
                                                                              ( ( X1 @ id @ X5 @ id )
                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X2 @ X4 )
                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X2 @ X4 )
                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                         => ~ hoasinduction_lem2_lthm )
                                     => ~ hoasapinj2_gthm )
                                 => ~ hoasinduction_lem1_lthm )
                             => lamnotap )
                         => ~ hoasapinj1_gthm )
                     => ~ hoaslamnotvar )
                 => ( axidl != sP4 ) )
             => ~ hoaslaminj_gthm )
         => ( induction2_lthm
           != ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) )
             => ( ! [X1: term > $o,X2: term,X3: subst] :
                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                ( ~ ( ( X1 @ X4 )
                                   => ~ ( X1 @ X5 ) )
                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                           => ~ ! [X4: term] :
                                  ( ! [X5: term] :
                                      ( ( X1 @ X5 )
                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                 => ( X1 @ ( lam @ X4 ) ) ) )
                       => ~ ! [X4: term] :
                              ( ( var @ X4 )
                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                   => ( X1 @ ( sub @ X2 @ X3 ) ) )
               => ! [X1: term > $o,X2: term] :
                    ( ~ ( ~ ( ! [X3: term] :
                                ( ( var @ X3 )
                               => ( X1 @ X3 ) )
                           => ~ ! [X3: term,X4: term] :
                                  ( ~ ( ( X1 @ X3 )
                                     => ~ ( X1 @ X4 ) )
                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                       => ~ ! [X3: term] :
                              ( ! [X4: term] :
                                  ( ( X1 @ X4 )
                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                             => ( X1 @ ( lam @ X3 ) ) ) )
                   => ( X1 @ X2 ) ) ) ) ) )
     => ( hoasinduction_lem0_lthm != sP10 ) ),
    introduced(assumption,[]) ).

thf(h70,assumption,
    ( substmonoid_lthm
    = ( sP4
     => ( sP17
       => ~ sP11 ) ) ),
    introduced(assumption,[]) ).

thf(h71,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                                 => ( induction
                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                 => ( sP40
                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                                         => ~ axclos )
                                                                                                                     => ~ axassoc )
                                                                                                                 => ( hoasinduction_lem2v2
                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                     => ~ ! [X5: term] :
                                                                                                                                            ( ( X2 @ X5 )
                                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                             => ~ pushprop_lthm )
                                                                                                         => ( apinj2
                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                                     => ( apinj1
                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                                                             => ( hoasinduction_lem3v2a
                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                     => ~ ! [X5: term] :
                                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                             => ~ ! [X4: term] :
                                                                                                                    ( ( X2 @ X4 )
                                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                                         => ~ ! [X4: term] :
                                                                                                                ( ( X2 @ X4 )
                                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                         => ( hoasapinj1_lthm
                                                                                           != ( ! [X1: term] :
                                                                                                  ( X1
                                                                                                  = ( sub @ X1 @ id ) )
                                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                                   => ( X1 = X2 ) )
                                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                                     => ( hoaslaminj_lthm
                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                              ( X1
                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                ( X2
                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                           => ( ! [X1: term,X2: term] :
                                                                                                  ( ( ( lam @ X1 )
                                                                                                    = ( lam @ X2 ) )
                                                                                                 => ( X1 = X2 ) )
                                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                                 => ( axvarcons
                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                          ( X1
                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                             => ( axscons
                                                                               != ( ! [X1: subst] :
                                                                                      ( X1
                                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                         => ~ hoasinduction_lem2v2_gthm )
                                                                     => ( axidr != sP17 ) )
                                                                 => ( pushprop_lem1 != sP12 ) )
                                                             => ( laminj
                                                               != ( ! [X1: term,X2: term] :
                                                                      ( ( ( lam @ X1 )
                                                                        = ( lam @ X2 ) )
                                                                     => ( X1 = X2 ) ) ) ) )
                                                         => ( hoasinduction_lem3_lthm
                                                           != ( ! [X1: term] :
                                                                  ( X1
                                                                  = ( sub @ X1 @ id ) )
                                                             => ( sP40
                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                           => ~ ! [X3: subst > term > term] :
                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                     => ~ ! [X4: term] :
                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                       => ~ ! [X3: term] :
                                                                              ( ( X1 @ id @ X3 @ id )
                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                     => ( pushprop_lem0 != sP41 ) )
                                                 => ~ pushprop_gthm )
                                             => ~ axabs )
                                         => ( hoasinduction_lem3v2a_lthm
                                           != ( sP22
                                             => ( ! [X1: term] :
                                                    ( X1
                                                    = ( sub @ X1 @ id ) )
                                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                   => ~ ! [X5: term] :
                                                                          ( ( X1 @ id @ X5 @ id )
                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X2 @ X4 )
                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X2 @ X4 )
                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                     => ~ hoasinduction_lem2_lthm )
                                 => ~ hoasapinj2_gthm )
                             => ~ hoasinduction_lem1_lthm )
                         => lamnotap )
                     => ~ hoasapinj1_gthm )
                 => ~ hoaslamnotvar )
             => ( axidl != sP4 ) )
         => ~ hoaslaminj_gthm )
     => ( induction2_lthm
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( ! [X1: term > $o,X2: term,X3: subst] :
                ( ~ ( ~ ( ! [X4: term,X5: term] :
                            ( ~ ( ( X1 @ X4 )
                               => ~ ( X1 @ X5 ) )
                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                       => ~ ! [X4: term] :
                              ( ! [X5: term] :
                                  ( ( X1 @ X5 )
                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                             => ( X1 @ ( lam @ X4 ) ) ) )
                   => ~ ! [X4: term] :
                          ( ( var @ X4 )
                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
               => ( X1 @ ( sub @ X2 @ X3 ) ) )
           => ! [X1: term > $o,X2: term] :
                ( ~ ( ~ ( ! [X3: term] :
                            ( ( var @ X3 )
                           => ( X1 @ X3 ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ X3 )
                                 => ~ ( X1 @ X4 ) )
                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                   => ~ ! [X3: term] :
                          ( ! [X4: term] :
                              ( ( X1 @ X4 )
                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                         => ( X1 @ ( lam @ X3 ) ) ) )
               => ( X1 @ X2 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h72,assumption,
    hoasinduction_lem0_lthm = sP10,
    introduced(assumption,[]) ).

thf(h73,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                                 => ~ axapp )
                                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                                             => ( induction
                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                             => ( sP40
                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                                     => ~ axclos )
                                                                                                                 => ~ axassoc )
                                                                                                             => ( hoasinduction_lem2v2
                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                                 => ~ ! [X5: term] :
                                                                                                                                        ( ( X2 @ X5 )
                                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                         => ~ pushprop_lthm )
                                                                                                     => ( apinj2
                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                                 => ( apinj1
                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                                                         => ( hoasinduction_lem3v2a
                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                 => ~ ! [X5: term] :
                                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                         => ~ ! [X4: term] :
                                                                                                                ( ( X2 @ X4 )
                                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                                     => ~ ! [X4: term] :
                                                                                                            ( ( X2 @ X4 )
                                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                     => ( hoasapinj1_lthm
                                                                                       != ( ! [X1: term] :
                                                                                              ( X1
                                                                                              = ( sub @ X1 @ id ) )
                                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                                  = ( ap @ X2 @ X4 ) )
                                                                                               => ( X1 = X2 ) )
                                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                                 => ( hoaslaminj_lthm
                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                          ( X1
                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                            ( X2
                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                       => ( ! [X1: term,X2: term] :
                                                                                              ( ( ( lam @ X1 )
                                                                                                = ( lam @ X2 ) )
                                                                                             => ( X1 = X2 ) )
                                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                             => ( axvarcons
                                                                               != ( ! [X1: term,X2: subst] :
                                                                                      ( X1
                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                         => ( axscons
                                                                           != ( ! [X1: subst] :
                                                                                  ( X1
                                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                     => ~ hoasinduction_lem2v2_gthm )
                                                                 => ( axidr != sP17 ) )
                                                             => ( pushprop_lem1 != sP12 ) )
                                                         => ( laminj
                                                           != ( ! [X1: term,X2: term] :
                                                                  ( ( ( lam @ X1 )
                                                                    = ( lam @ X2 ) )
                                                                 => ( X1 = X2 ) ) ) ) )
                                                     => ( hoasinduction_lem3_lthm
                                                       != ( ! [X1: term] :
                                                              ( X1
                                                              = ( sub @ X1 @ id ) )
                                                         => ( sP40
                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                       => ~ ! [X3: subst > term > term] :
                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                 => ~ ! [X4: term] :
                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                   => ~ ! [X3: term] :
                                                                          ( ( X1 @ id @ X3 @ id )
                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                 => ( pushprop_lem0 != sP41 ) )
                                             => ~ pushprop_gthm )
                                         => ~ axabs )
                                     => ( hoasinduction_lem3v2a_lthm
                                       != ( sP22
                                         => ( ! [X1: term] :
                                                ( X1
                                                = ( sub @ X1 @ id ) )
                                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                               => ~ ! [X5: term] :
                                                                      ( ( X1 @ id @ X5 @ id )
                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X2 @ X4 )
                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X2 @ X4 )
                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                                 => ~ hoasinduction_lem2_lthm )
                             => ~ hoasapinj2_gthm )
                         => ~ hoasinduction_lem1_lthm )
                     => lamnotap )
                 => ~ hoasapinj1_gthm )
             => ~ hoaslamnotvar )
         => ( axidl != sP4 ) )
     => ~ hoaslaminj_gthm ),
    introduced(assumption,[]) ).

thf(h74,assumption,
    ( induction2_lthm
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( ! [X1: term > $o,X2: term,X3: subst] :
            ( ~ ( ~ ( ! [X4: term,X5: term] :
                        ( ~ ( ( X1 @ X4 )
                           => ~ ( X1 @ X5 ) )
                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                   => ~ ! [X4: term] :
                          ( ! [X5: term] :
                              ( ( X1 @ X5 )
                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                         => ( X1 @ ( lam @ X4 ) ) ) )
               => ~ ! [X4: term] :
                      ( ( var @ X4 )
                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
           => ( X1 @ ( sub @ X2 @ X3 ) ) )
       => ! [X1: term > $o,X2: term] :
            ( ~ ( ~ ( ! [X3: term] :
                        ( ( var @ X3 )
                       => ( X1 @ X3 ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ X3 )
                             => ~ ( X1 @ X4 ) )
                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
               => ~ ! [X3: term] :
                      ( ! [X4: term] :
                          ( ( X1 @ X4 )
                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                     => ( X1 @ ( lam @ X3 ) ) ) )
           => ( X1 @ X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h75,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                                             => ~ axapp )
                                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                             => ~ ulamvarind )
                                                                                                                                                         => ( induction
                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                         => ( sP40
                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                                 => ~ termmset_gthm )
                                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                                 => ~ axclos )
                                                                                                             => ~ axassoc )
                                                                                                         => ( hoasinduction_lem2v2
                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                             => ~ ! [X5: term] :
                                                                                                                                    ( ( X2 @ X5 )
                                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                     => ~ pushprop_lthm )
                                                                                                 => ( apinj2
                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                                             => ( apinj1
                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                                     => ( hoasinduction_lem3v2a
                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                             => ~ ! [X5: term] :
                                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                     => ~ ! [X4: term] :
                                                                                                            ( ( X2 @ X4 )
                                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                                 => ~ ! [X4: term] :
                                                                                                        ( ( X2 @ X4 )
                                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                                 => ( hoasapinj1_lthm
                                                                                   != ( ! [X1: term] :
                                                                                          ( X1
                                                                                          = ( sub @ X1 @ id ) )
                                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                            ( ( ( ap @ X1 @ X3 )
                                                                                              = ( ap @ X2 @ X4 ) )
                                                                                           => ( X1 = X2 ) )
                                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                                             => ( hoaslaminj_lthm
                                                                               != ( ! [X1: term,X2: subst] :
                                                                                      ( X1
                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                        ( X2
                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                   => ( ! [X1: term,X2: term] :
                                                                                          ( ( ( lam @ X1 )
                                                                                            = ( lam @ X2 ) )
                                                                                         => ( X1 = X2 ) )
                                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                         => ( axvarcons
                                                                           != ( ! [X1: term,X2: subst] :
                                                                                  ( X1
                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                     => ( axscons
                                                                       != ( ! [X1: subst] :
                                                                              ( X1
                                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                                 => ~ hoasinduction_lem2v2_gthm )
                                                             => ( axidr != sP17 ) )
                                                         => ( pushprop_lem1 != sP12 ) )
                                                     => ( laminj
                                                       != ( ! [X1: term,X2: term] :
                                                              ( ( ( lam @ X1 )
                                                                = ( lam @ X2 ) )
                                                             => ( X1 = X2 ) ) ) ) )
                                                 => ( hoasinduction_lem3_lthm
                                                   != ( ! [X1: term] :
                                                          ( X1
                                                          = ( sub @ X1 @ id ) )
                                                     => ( sP40
                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                   => ~ ! [X3: subst > term > term] :
                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                             => ~ ! [X4: term] :
                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                               => ~ ! [X3: term] :
                                                                      ( ( X1 @ id @ X3 @ id )
                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                             => ( pushprop_lem0 != sP41 ) )
                                         => ~ pushprop_gthm )
                                     => ~ axabs )
                                 => ( hoasinduction_lem3v2a_lthm
                                   != ( sP22
                                     => ( ! [X1: term] :
                                            ( X1
                                            = ( sub @ X1 @ id ) )
                                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                           => ~ ! [X5: term] :
                                                                  ( ( X1 @ id @ X5 @ id )
                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X2 @ X4 )
                                                          = ( X1 @ id @ X4 @ id ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X2 @ X4 )
                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                             => ~ hoasinduction_lem2_lthm )
                         => ~ hoasapinj2_gthm )
                     => ~ hoasinduction_lem1_lthm )
                 => lamnotap )
             => ~ hoasapinj1_gthm )
         => ~ hoaslamnotvar )
     => ( axidl != sP4 ) ),
    introduced(assumption,[]) ).

thf(h76,assumption,
    hoaslaminj_gthm,
    introduced(assumption,[]) ).

thf(h77,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                                         => ~ axapp )
                                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                         => ~ ulamvarind )
                                                                                                                                                     => ( induction
                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                     => ( sP40
                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                             => ~ termmset_gthm )
                                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                                             => ~ axclos )
                                                                                                         => ~ axassoc )
                                                                                                     => ( hoasinduction_lem2v2
                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                         => ~ ! [X5: term] :
                                                                                                                                ( ( X2 @ X5 )
                                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                                 => ~ pushprop_lthm )
                                                                                             => ( apinj2
                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                                         => ( apinj1
                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                                 => ( hoasinduction_lem3v2a
                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                         => ~ ! [X5: term] :
                                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                 => ~ ! [X4: term] :
                                                                                                        ( ( X2 @ X4 )
                                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                                             => ~ ! [X4: term] :
                                                                                                    ( ( X2 @ X4 )
                                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                             => ( hoasapinj1_lthm
                                                                               != ( ! [X1: term] :
                                                                                      ( X1
                                                                                      = ( sub @ X1 @ id ) )
                                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                        ( ( ( ap @ X1 @ X3 )
                                                                                          = ( ap @ X2 @ X4 ) )
                                                                                       => ( X1 = X2 ) )
                                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                                         => ( hoaslaminj_lthm
                                                                           != ( ! [X1: term,X2: subst] :
                                                                                  ( X1
                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                             => ( ! [X1: term,X2: subst] :
                                                                                    ( X2
                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                               => ( ! [X1: term,X2: term] :
                                                                                      ( ( ( lam @ X1 )
                                                                                        = ( lam @ X2 ) )
                                                                                     => ( X1 = X2 ) )
                                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                     => ( axvarcons
                                                                       != ( ! [X1: term,X2: subst] :
                                                                              ( X1
                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                                 => ( axscons
                                                                   != ( ! [X1: subst] :
                                                                          ( X1
                                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                             => ~ hoasinduction_lem2v2_gthm )
                                                         => ( axidr != sP17 ) )
                                                     => ( pushprop_lem1 != sP12 ) )
                                                 => ( laminj
                                                   != ( ! [X1: term,X2: term] :
                                                          ( ( ( lam @ X1 )
                                                            = ( lam @ X2 ) )
                                                         => ( X1 = X2 ) ) ) ) )
                                             => ( hoasinduction_lem3_lthm
                                               != ( ! [X1: term] :
                                                      ( X1
                                                      = ( sub @ X1 @ id ) )
                                                 => ( sP40
                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                               => ~ ! [X3: subst > term > term] :
                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ( X1 @ id @ X4 @ id )
                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                           => ~ ! [X3: term] :
                                                                  ( ( X1 @ id @ X3 @ id )
                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                         => ( pushprop_lem0 != sP41 ) )
                                     => ~ pushprop_gthm )
                                 => ~ axabs )
                             => ( hoasinduction_lem3v2a_lthm
                               != ( sP22
                                 => ( ! [X1: term] :
                                        ( X1
                                        = ( sub @ X1 @ id ) )
                                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                       => ~ ! [X5: term] :
                                                              ( ( X1 @ id @ X5 @ id )
                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X2 @ X4 )
                                                      = ( X1 @ id @ X4 @ id ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X2 @ X4 )
                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                         => ~ hoasinduction_lem2_lthm )
                     => ~ hoasapinj2_gthm )
                 => ~ hoasinduction_lem1_lthm )
             => lamnotap )
         => ~ hoasapinj1_gthm )
     => ~ hoaslamnotvar ),
    introduced(assumption,[]) ).

thf(h78,assumption,
    axidl = sP4,
    introduced(assumption,[]) ).

thf(h79,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                             => ( hoasinduction
                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                                     => ~ axapp )
                                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                     => ~ ulamvarind )
                                                                                                                                                 => ( induction
                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                                               != ( ! [X1: term] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                 => ( sP40
                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                         => ~ termmset_gthm )
                                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                                 => ~ pushprop_lem2v2 )
                                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                                         => ~ axclos )
                                                                                                     => ~ axassoc )
                                                                                                 => ( hoasinduction_lem2v2
                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                     => ~ ! [X5: term] :
                                                                                                                            ( ( X2 @ X5 )
                                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                                             => ~ ( X2 @ X4 ) )
                                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                             => ~ pushprop_lthm )
                                                                                         => ( apinj2
                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                                     => ( apinj1
                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                                             => ( hoasinduction_lem3v2a
                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                     => ~ ! [X5: term] :
                                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                             => ~ ! [X4: term] :
                                                                                                    ( ( X2 @ X4 )
                                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                                         => ~ ! [X4: term] :
                                                                                                ( ( X2 @ X4 )
                                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                         => ( hoasapinj1_lthm
                                                                           != ( ! [X1: term] :
                                                                                  ( X1
                                                                                  = ( sub @ X1 @ id ) )
                                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                    ( ( ( ap @ X1 @ X3 )
                                                                                      = ( ap @ X2 @ X4 ) )
                                                                                   => ( X1 = X2 ) )
                                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                                     => ( hoaslaminj_lthm
                                                                       != ( ! [X1: term,X2: subst] :
                                                                              ( X1
                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                         => ( ! [X1: term,X2: subst] :
                                                                                ( X2
                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                           => ( ! [X1: term,X2: term] :
                                                                                  ( ( ( lam @ X1 )
                                                                                    = ( lam @ X2 ) )
                                                                                 => ( X1 = X2 ) )
                                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                                 => ( axvarcons
                                                                   != ( ! [X1: term,X2: subst] :
                                                                          ( X1
                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                             => ( axscons
                                                               != ( ! [X1: subst] :
                                                                      ( X1
                                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                         => ~ hoasinduction_lem2v2_gthm )
                                                     => ( axidr != sP17 ) )
                                                 => ( pushprop_lem1 != sP12 ) )
                                             => ( laminj
                                               != ( ! [X1: term,X2: term] :
                                                      ( ( ( lam @ X1 )
                                                        = ( lam @ X2 ) )
                                                     => ( X1 = X2 ) ) ) ) )
                                         => ( hoasinduction_lem3_lthm
                                           != ( ! [X1: term] :
                                                  ( X1
                                                  = ( sub @ X1 @ id ) )
                                             => ( sP40
                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                           => ~ ! [X3: subst > term > term] :
                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ( X1 @ id @ X4 @ id )
                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                       => ~ ! [X3: term] :
                                                              ( ( X1 @ id @ X3 @ id )
                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                     => ( pushprop_lem0 != sP41 ) )
                                 => ~ pushprop_gthm )
                             => ~ axabs )
                         => ( hoasinduction_lem3v2a_lthm
                           != ( sP22
                             => ( ! [X1: term] :
                                    ( X1
                                    = ( sub @ X1 @ id ) )
                               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                   => ~ ! [X5: term] :
                                                          ( ( X1 @ id @ X5 @ id )
                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X2 @ X4 )
                                                  = ( X1 @ id @ X4 @ id ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X2 @ X4 )
                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                     => ~ hoasinduction_lem2_lthm )
                 => ~ hoasapinj2_gthm )
             => ~ hoasinduction_lem1_lthm )
         => lamnotap )
     => ~ hoasapinj1_gthm ),
    introduced(assumption,[]) ).

thf(h80,assumption,
    hoaslamnotvar,
    introduced(assumption,[]) ).

thf(h81,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                         => ( hoasinduction
                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                                 => ~ axapp )
                                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                                 => ~ ulamvarind )
                                                                                                                                             => ( induction
                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                                           != ( ! [X1: term] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                             => ( sP40
                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                     => ~ termmset_gthm )
                                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                                             => ~ pushprop_lem2v2 )
                                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                                     => ~ axclos )
                                                                                                 => ~ axassoc )
                                                                                             => ( hoasinduction_lem2v2
                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                                 => ~ ! [X5: term] :
                                                                                                                        ( ( X2 @ X5 )
                                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                                             => ~ ( X2 @ X3 ) )
                                                                                                         => ~ ( X2 @ X4 ) )
                                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                         => ~ pushprop_lthm )
                                                                                     => ( apinj2
                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                                = ( ap @ X2 @ X4 ) )
                                                                                             => ( X3 = X4 ) ) ) ) )
                                                                                 => ( apinj1
                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                                         => ( hoasinduction_lem3v2a
                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                 => ~ ! [X5: term] :
                                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                         => ~ ! [X4: term] :
                                                                                                ( ( X2 @ X4 )
                                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                                     => ~ ! [X4: term] :
                                                                                            ( ( X2 @ X4 )
                                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                     => ( hoasapinj1_lthm
                                                                       != ( ! [X1: term] :
                                                                              ( X1
                                                                              = ( sub @ X1 @ id ) )
                                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                ( ( ( ap @ X1 @ X3 )
                                                                                  = ( ap @ X2 @ X4 ) )
                                                                               => ( X1 = X2 ) )
                                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                               => ( X1 = X2 ) ) ) ) ) )
                                                                 => ( hoaslaminj_lthm
                                                                   != ( ! [X1: term,X2: subst] :
                                                                          ( X1
                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                     => ( ! [X1: term,X2: subst] :
                                                                            ( X2
                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                       => ( ! [X1: term,X2: term] :
                                                                              ( ( ( lam @ X1 )
                                                                                = ( lam @ X2 ) )
                                                                             => ( X1 = X2 ) )
                                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                             => ( axvarcons
                                                               != ( ! [X1: term,X2: subst] :
                                                                      ( X1
                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                         => ( axscons
                                                           != ( ! [X1: subst] :
                                                                  ( X1
                                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                     => ~ hoasinduction_lem2v2_gthm )
                                                 => ( axidr != sP17 ) )
                                             => ( pushprop_lem1 != sP12 ) )
                                         => ( laminj
                                           != ( ! [X1: term,X2: term] :
                                                  ( ( ( lam @ X1 )
                                                    = ( lam @ X2 ) )
                                                 => ( X1 = X2 ) ) ) ) )
                                     => ( hoasinduction_lem3_lthm
                                       != ( ! [X1: term] :
                                              ( X1
                                              = ( sub @ X1 @ id ) )
                                         => ( sP40
                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                       => ~ ! [X3: subst > term > term] :
                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ( X1 @ id @ X4 @ id )
                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                   => ~ ! [X3: term] :
                                                          ( ( X1 @ id @ X3 @ id )
                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                 => ( pushprop_lem0 != sP41 ) )
                             => ~ pushprop_gthm )
                         => ~ axabs )
                     => ( hoasinduction_lem3v2a_lthm
                       != ( sP22
                         => ( ! [X1: term] :
                                ( X1
                                = ( sub @ X1 @ id ) )
                           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                               => ~ ! [X5: term] :
                                                      ( ( X1 @ id @ X5 @ id )
                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                       => ~ ! [X4: term] :
                                              ( ( X2 @ X4 )
                                              = ( X1 @ id @ X4 @ id ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X2 @ X4 )
                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
                 => ~ hoasinduction_lem2_lthm )
             => ~ hoasapinj2_gthm )
         => ~ hoasinduction_lem1_lthm )
     => lamnotap ),
    introduced(assumption,[]) ).

thf(h82,assumption,
    hoasapinj1_gthm,
    introduced(assumption,[]) ).

thf(h83,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                     => ( hoasinduction
                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                                             => ~ axapp )
                                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                             => ~ ulamvarind )
                                                                                                                                         => ( induction
                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                                       != ( ! [X1: term] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                         => ( sP40
                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                                 => ~ termmset_gthm )
                                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                                         => ~ pushprop_lem2v2 )
                                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                                 => ~ axclos )
                                                                                             => ~ axassoc )
                                                                                         => ( hoasinduction_lem2v2
                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                             => ~ ! [X5: term] :
                                                                                                                    ( ( X2 @ X5 )
                                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                                         => ~ ( X2 @ X3 ) )
                                                                                                     => ~ ( X2 @ X4 ) )
                                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                     => ~ pushprop_lthm )
                                                                                 => ( apinj2
                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                          ( ( ( ap @ X1 @ X3 )
                                                                                            = ( ap @ X2 @ X4 ) )
                                                                                         => ( X3 = X4 ) ) ) ) )
                                                                             => ( apinj1
                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                                     => ( hoasinduction_lem3v2a
                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                             => ~ ! [X5: term] :
                                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                     => ~ ! [X4: term] :
                                                                                            ( ( X2 @ X4 )
                                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                                 => ~ ! [X4: term] :
                                                                                        ( ( X2 @ X4 )
                                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                                 => ( hoasapinj1_lthm
                                                                   != ( ! [X1: term] :
                                                                          ( X1
                                                                          = ( sub @ X1 @ id ) )
                                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                            ( ( ( ap @ X1 @ X3 )
                                                                              = ( ap @ X2 @ X4 ) )
                                                                           => ( X1 = X2 ) )
                                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                           => ( X1 = X2 ) ) ) ) ) )
                                                             => ( hoaslaminj_lthm
                                                               != ( ! [X1: term,X2: subst] :
                                                                      ( X1
                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                 => ( ! [X1: term,X2: subst] :
                                                                        ( X2
                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                   => ( ! [X1: term,X2: term] :
                                                                          ( ( ( lam @ X1 )
                                                                            = ( lam @ X2 ) )
                                                                         => ( X1 = X2 ) )
                                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                         => ( ( X1 @ X3 @ X4 )
                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                         => ( axvarcons
                                                           != ( ! [X1: term,X2: subst] :
                                                                  ( X1
                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                     => ( axscons
                                                       != ( ! [X1: subst] :
                                                              ( X1
                                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                                 => ~ hoasinduction_lem2v2_gthm )
                                             => ( axidr != sP17 ) )
                                         => ( pushprop_lem1 != sP12 ) )
                                     => ( laminj
                                       != ( ! [X1: term,X2: term] :
                                              ( ( ( lam @ X1 )
                                                = ( lam @ X2 ) )
                                             => ( X1 = X2 ) ) ) ) )
                                 => ( hoasinduction_lem3_lthm
                                   != ( ! [X1: term] :
                                          ( X1
                                          = ( sub @ X1 @ id ) )
                                     => ( sP40
                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                   => ~ ! [X3: subst > term > term] :
                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ( X1 @ id @ X4 @ id )
                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                               => ~ ! [X3: term] :
                                                      ( ( X1 @ id @ X3 @ id )
                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                             => ( pushprop_lem0 != sP41 ) )
                         => ~ pushprop_gthm )
                     => ~ axabs )
                 => ( hoasinduction_lem3v2a_lthm
                   != ( sP22
                     => ( ! [X1: term] :
                            ( X1
                            = ( sub @ X1 @ id ) )
                       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                           => ~ ! [X5: term] :
                                                  ( ( X1 @ id @ X5 @ id )
                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                   => ~ ! [X4: term] :
                                          ( ( X2 @ X4 )
                                          = ( X1 @ id @ X4 @ id ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X2 @ X4 )
                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                           => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
             => ~ hoasinduction_lem2_lthm )
         => ~ hoasapinj2_gthm )
     => ~ hoasinduction_lem1_lthm ),
    introduced(assumption,[]) ).

thf(h84,assumption,
    ~ lamnotap,
    introduced(assumption,[]) ).

thf(h85,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                                 => ( hoasinduction
                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                                         => ~ axapp )
                                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                         => ~ ulamvarind )
                                                                                                                                     => ( induction
                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                                   != ( ! [X1: term] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                     => ( sP40
                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                             => ~ termmset_gthm )
                                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                                     => ~ pushprop_lem2v2 )
                                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                                             => ~ axclos )
                                                                                         => ~ axassoc )
                                                                                     => ( hoasinduction_lem2v2
                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                         => ~ ! [X5: term] :
                                                                                                                ( ( X2 @ X5 )
                                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                                     => ~ ( X2 @ X3 ) )
                                                                                                 => ~ ( X2 @ X4 ) )
                                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                                 => ~ pushprop_lthm )
                                                                             => ( apinj2
                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                      ( ( ( ap @ X1 @ X3 )
                                                                                        = ( ap @ X2 @ X4 ) )
                                                                                     => ( X3 = X4 ) ) ) ) )
                                                                         => ( apinj1
                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                                 => ( hoasinduction_lem3v2a
                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                         => ~ ! [X5: term] :
                                                                                                ( ( X1 @ id @ X5 @ id )
                                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                 => ~ ! [X4: term] :
                                                                                        ( ( X2 @ X4 )
                                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                                             => ~ ! [X4: term] :
                                                                                    ( ( X2 @ X4 )
                                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                             => ( hoasapinj1_lthm
                                                               != ( ! [X1: term] :
                                                                      ( X1
                                                                      = ( sub @ X1 @ id ) )
                                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                        ( ( ( ap @ X1 @ X3 )
                                                                          = ( ap @ X2 @ X4 ) )
                                                                       => ( X1 = X2 ) )
                                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                       => ( X1 = X2 ) ) ) ) ) )
                                                         => ( hoaslaminj_lthm
                                                           != ( ! [X1: term,X2: subst] :
                                                                  ( X1
                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                             => ( ! [X1: term,X2: subst] :
                                                                    ( X2
                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                               => ( ! [X1: term,X2: term] :
                                                                      ( ( ( lam @ X1 )
                                                                        = ( lam @ X2 ) )
                                                                     => ( X1 = X2 ) )
                                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                     => ( ( X1 @ X3 @ X4 )
                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                     => ( axvarcons
                                                       != ( ! [X1: term,X2: subst] :
                                                              ( X1
                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                                 => ( axscons
                                                   != ( ! [X1: subst] :
                                                          ( X1
                                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                             => ~ hoasinduction_lem2v2_gthm )
                                         => ( axidr != sP17 ) )
                                     => ( pushprop_lem1 != sP12 ) )
                                 => ( laminj
                                   != ( ! [X1: term,X2: term] :
                                          ( ( ( lam @ X1 )
                                            = ( lam @ X2 ) )
                                         => ( X1 = X2 ) ) ) ) )
                             => ( hoasinduction_lem3_lthm
                               != ( ! [X1: term] :
                                      ( X1
                                      = ( sub @ X1 @ id ) )
                                 => ( sP40
                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                               => ~ ! [X3: subst > term > term] :
                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                         => ~ ! [X4: term] :
                                                                ( ( X1 @ id @ X4 @ id )
                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                           => ~ ! [X3: term] :
                                                  ( ( X1 @ id @ X3 @ id )
                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                         => ( pushprop_lem0 != sP41 ) )
                     => ~ pushprop_gthm )
                 => ~ axabs )
             => ( hoasinduction_lem3v2a_lthm
               != ( sP22
                 => ( ! [X1: term] :
                        ( X1
                        = ( sub @ X1 @ id ) )
                   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                       => ~ ! [X5: term] :
                                              ( ( X1 @ id @ X5 @ id )
                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                               => ~ ! [X4: term] :
                                      ( ( X2 @ X4 )
                                      = ( X1 @ id @ X4 @ id ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X2 @ X4 )
                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                       => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
         => ~ hoasinduction_lem2_lthm )
     => ~ hoasapinj2_gthm ),
    introduced(assumption,[]) ).

thf(h86,assumption,
    hoasinduction_lem1_lthm,
    introduced(assumption,[]) ).

thf(h87,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                             => ( hoasinduction
                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                                     => ~ axapp )
                                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                     => ~ ulamvarind )
                                                                                                                                 => ( induction
                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                                               != ( ! [X1: term] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                 => ( sP40
                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                         => ~ termmset_gthm )
                                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                                             => ~ hoaslamnotap_gthm )
                                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                                 => ~ pushprop_lem2v2 )
                                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                                         => ~ axclos )
                                                                                     => ~ axassoc )
                                                                                 => ( hoasinduction_lem2v2
                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                     => ~ ! [X5: term] :
                                                                                                            ( ( X2 @ X5 )
                                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                                 => ~ ( X2 @ X3 ) )
                                                                                             => ~ ( X2 @ X4 ) )
                                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                             => ~ pushprop_lthm )
                                                                         => ( apinj2
                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                  ( ( ( ap @ X1 @ X3 )
                                                                                    = ( ap @ X2 @ X4 ) )
                                                                                 => ( X3 = X4 ) ) ) ) )
                                                                     => ( apinj1
                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                = ( ap @ X2 @ X4 ) )
                                                                             => ( X1 = X2 ) ) ) ) )
                                                                 => ( hoasapinj2_lthm != sP43 ) )
                                                             => ( hoasinduction_lem3v2a
                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                     => ~ ! [X5: term] :
                                                                                            ( ( X1 @ id @ X5 @ id )
                                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                             => ~ ! [X4: term] :
                                                                                    ( ( X2 @ X4 )
                                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ( X2 @ X4 )
                                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                         => ( hoasapinj1_lthm
                                                           != ( ! [X1: term] :
                                                                  ( X1
                                                                  = ( sub @ X1 @ id ) )
                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                    ( ( ( ap @ X1 @ X3 )
                                                                      = ( ap @ X2 @ X4 ) )
                                                                   => ( X1 = X2 ) )
                                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                   => ( X1 = X2 ) ) ) ) ) )
                                                     => ( hoaslaminj_lthm
                                                       != ( ! [X1: term,X2: subst] :
                                                              ( X1
                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                         => ( ! [X1: term,X2: subst] :
                                                                ( X2
                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                           => ( ! [X1: term,X2: term] :
                                                                  ( ( ( lam @ X1 )
                                                                    = ( lam @ X2 ) )
                                                                 => ( X1 = X2 ) )
                                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                 => ( ( X1 @ X3 @ X4 )
                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                                 => ( axvarcons
                                                   != ( ! [X1: term,X2: subst] :
                                                          ( X1
                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                             => ( axscons
                                               != ( ! [X1: subst] :
                                                      ( X1
                                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                         => ~ hoasinduction_lem2v2_gthm )
                                     => ( axidr != sP17 ) )
                                 => ( pushprop_lem1 != sP12 ) )
                             => ( laminj
                               != ( ! [X1: term,X2: term] :
                                      ( ( ( lam @ X1 )
                                        = ( lam @ X2 ) )
                                     => ( X1 = X2 ) ) ) ) )
                         => ( hoasinduction_lem3_lthm
                           != ( ! [X1: term] :
                                  ( X1
                                  = ( sub @ X1 @ id ) )
                             => ( sP40
                               => ! [X1: subst > term > subst > $o,X2: term] :
                                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                           => ~ ! [X3: subst > term > term] :
                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                     => ~ ! [X4: term] :
                                                            ( ( X1 @ id @ X4 @ id )
                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                       => ~ ! [X3: term] :
                                              ( ( X1 @ id @ X3 @ id )
                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                     => ( pushprop_lem0 != sP41 ) )
                 => ~ pushprop_gthm )
             => ~ axabs )
         => ( hoasinduction_lem3v2a_lthm
           != ( sP22
             => ( ! [X1: term] :
                    ( X1
                    = ( sub @ X1 @ id ) )
               => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                   => ~ ! [X5: term] :
                                          ( ( X1 @ id @ X5 @ id )
                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                           => ~ ! [X4: term] :
                                  ( ( X2 @ X4 )
                                  = ( X1 @ id @ X4 @ id ) ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                   => ( X2 @ ( lam @ X3 ) ) ) ) ) ) )
     => ~ hoasinduction_lem2_lthm ),
    introduced(assumption,[]) ).

thf(h88,assumption,
    hoasapinj2_gthm,
    introduced(assumption,[]) ).

thf(h89,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                         => ( hoasinduction
                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                                 => ~ axapp )
                                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                                 => ~ ulamvarind )
                                                                                                                             => ( induction
                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ( X1 @ X3 )
                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                                           != ( ! [X1: term] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                             => ( sP40
                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                     => ~ termmset_gthm )
                                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                                         => ~ hoaslamnotap_gthm )
                                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                                             => ~ pushprop_lem2v2 )
                                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                                     => ~ axclos )
                                                                                 => ~ axassoc )
                                                                             => ( hoasinduction_lem2v2
                                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                                 => ~ ! [X5: term] :
                                                                                                        ( ( X2 @ X5 )
                                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                                             => ~ ( X2 @ X3 ) )
                                                                                         => ~ ( X2 @ X4 ) )
                                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                         => ~ pushprop_lthm )
                                                                     => ( apinj2
                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                              ( ( ( ap @ X1 @ X3 )
                                                                                = ( ap @ X2 @ X4 ) )
                                                                             => ( X3 = X4 ) ) ) ) )
                                                                 => ( apinj1
                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                          ( ( ( ap @ X1 @ X3 )
                                                                            = ( ap @ X2 @ X4 ) )
                                                                         => ( X1 = X2 ) ) ) ) )
                                                             => ( hoasapinj2_lthm != sP43 ) )
                                                         => ( hoasinduction_lem3v2a
                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                 => ~ ! [X5: term] :
                                                                                        ( ( X1 @ id @ X5 @ id )
                                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ( X2 @ X4 )
                                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ( X2 @ X4 )
                                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                     => ( hoasapinj1_lthm
                                                       != ( ! [X1: term] :
                                                              ( X1
                                                              = ( sub @ X1 @ id ) )
                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                ( ( ( ap @ X1 @ X3 )
                                                                  = ( ap @ X2 @ X4 ) )
                                                               => ( X1 = X2 ) )
                                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                               => ( X1 = X2 ) ) ) ) ) )
                                                 => ( hoaslaminj_lthm
                                                   != ( ! [X1: term,X2: subst] :
                                                          ( X1
                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                     => ( ! [X1: term,X2: subst] :
                                                            ( X2
                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                       => ( ! [X1: term,X2: term] :
                                                              ( ( ( lam @ X1 )
                                                                = ( lam @ X2 ) )
                                                             => ( X1 = X2 ) )
                                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                             => ( ( X1 @ X3 @ X4 )
                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                             => ( axvarcons
                                               != ( ! [X1: term,X2: subst] :
                                                      ( X1
                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                         => ( axscons
                                           != ( ! [X1: subst] :
                                                  ( X1
                                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                     => ~ hoasinduction_lem2v2_gthm )
                                 => ( axidr != sP17 ) )
                             => ( pushprop_lem1 != sP12 ) )
                         => ( laminj
                           != ( ! [X1: term,X2: term] :
                                  ( ( ( lam @ X1 )
                                    = ( lam @ X2 ) )
                                 => ( X1 = X2 ) ) ) ) )
                     => ( hoasinduction_lem3_lthm
                       != ( ! [X1: term] :
                              ( X1
                              = ( sub @ X1 @ id ) )
                         => ( sP40
                           => ! [X1: subst > term > subst > $o,X2: term] :
                                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                       => ~ ! [X3: subst > term > term] :
                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                 => ~ ! [X4: term] :
                                                        ( ( X1 @ id @ X4 @ id )
                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                   => ~ ! [X3: term] :
                                          ( ( X1 @ id @ X3 @ id )
                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                 => ( pushprop_lem0 != sP41 ) )
             => ~ pushprop_gthm )
         => ~ axabs )
     => ( hoasinduction_lem3v2a_lthm
       != ( sP22
         => ( ! [X1: term] :
                ( X1
                = ( sub @ X1 @ id ) )
           => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                ( ~ ( ~ ( ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                              = ( X1 @ id @ X4 @ id ) ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
               => ( X2 @ ( lam @ X3 ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h90,assumption,
    hoasinduction_lem2_lthm,
    introduced(assumption,[]) ).

thf(h91,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                     => ( hoasinduction
                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                                             => ~ axapp )
                                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                             => ~ ulamvarind )
                                                                                                                         => ( induction
                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                              ( ( var @ X3 )
                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ( X1 @ X3 )
                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                                       != ( ! [X1: term] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                         => ( sP40
                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                                 => ~ termmset_gthm )
                                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                                     => ~ hoaslamnotap_gthm )
                                                                                                 => ~ hoaslamnotvar_gthm )
                                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                                         => ~ pushprop_lem2v2 )
                                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                                 => ~ axclos )
                                                                             => ~ axassoc )
                                                                         => ( hoasinduction_lem2v2
                                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                             => ~ ! [X5: term] :
                                                                                                    ( ( X2 @ X5 )
                                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                                         => ~ ( X2 @ X3 ) )
                                                                                     => ~ ( X2 @ X4 ) )
                                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                     => ~ pushprop_lthm )
                                                                 => ( apinj2
                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                          ( ( ( ap @ X1 @ X3 )
                                                                            = ( ap @ X2 @ X4 ) )
                                                                         => ( X3 = X4 ) ) ) ) )
                                                             => ( apinj1
                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                      ( ( ( ap @ X1 @ X3 )
                                                                        = ( ap @ X2 @ X4 ) )
                                                                     => ( X1 = X2 ) ) ) ) )
                                                         => ( hoasapinj2_lthm != sP43 ) )
                                                     => ( hoasinduction_lem3v2a
                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                             => ~ ! [X5: term] :
                                                                                    ( ( X1 @ id @ X5 @ id )
                                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ( X2 @ X4 )
                                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ( X2 @ X4 )
                                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                                 => ( hoasapinj1_lthm
                                                   != ( ! [X1: term] :
                                                          ( X1
                                                          = ( sub @ X1 @ id ) )
                                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                            ( ( ( ap @ X1 @ X3 )
                                                              = ( ap @ X2 @ X4 ) )
                                                           => ( X1 = X2 ) )
                                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                           => ( X1 = X2 ) ) ) ) ) )
                                             => ( hoaslaminj_lthm
                                               != ( ! [X1: term,X2: subst] :
                                                      ( X1
                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                 => ( ! [X1: term,X2: subst] :
                                                        ( X2
                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                   => ( ! [X1: term,X2: term] :
                                                          ( ( ( lam @ X1 )
                                                            = ( lam @ X2 ) )
                                                         => ( X1 = X2 ) )
                                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                         => ( ( X1 @ X3 @ X4 )
                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                         => ( axvarcons
                                           != ( ! [X1: term,X2: subst] :
                                                  ( X1
                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                     => ( axscons
                                       != ( ! [X1: subst] :
                                              ( X1
                                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                                 => ~ hoasinduction_lem2v2_gthm )
                             => ( axidr != sP17 ) )
                         => ( pushprop_lem1 != sP12 ) )
                     => ( laminj
                       != ( ! [X1: term,X2: term] :
                              ( ( ( lam @ X1 )
                                = ( lam @ X2 ) )
                             => ( X1 = X2 ) ) ) ) )
                 => ( hoasinduction_lem3_lthm
                   != ( ! [X1: term] :
                          ( X1
                          = ( sub @ X1 @ id ) )
                     => ( sP40
                       => ! [X1: subst > term > subst > $o,X2: term] :
                            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                   => ~ ! [X3: subst > term > term] :
                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                             => ~ ! [X4: term] :
                                                    ( ( X1 @ id @ X4 @ id )
                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                               => ~ ! [X3: term] :
                                      ( ( X1 @ id @ X3 @ id )
                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
             => ( pushprop_lem0 != sP41 ) )
         => ~ pushprop_gthm )
     => ~ axabs ),
    introduced(assumption,[]) ).

thf(h92,assumption,
    ( hoasinduction_lem3v2a_lthm
    = ( sP22
     => ( ! [X1: term] :
            ( X1
            = ( sub @ X1 @ id ) )
       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
            ( ~ ( ~ ( ! [X4: subst > term > term] :
                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                           => ~ ! [X5: term] :
                                  ( ( X1 @ id @ X5 @ id )
                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                          = ( X1 @ id @ X4 @ id ) ) )
               => ~ ! [X4: term] :
                      ( ( X2 @ X4 )
                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
           => ( X2 @ ( lam @ X3 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h93,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                                 => ( hoasinduction
                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                                         => ~ axapp )
                                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                         => ~ ulamvarind )
                                                                                                                     => ( induction
                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                          ( ( var @ X3 )
                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ( X1 @ X3 )
                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                                   != ( ! [X1: term] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                     => ( sP40
                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                             => ~ termmset_gthm )
                                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                                 => ~ hoaslamnotap_gthm )
                                                                                             => ~ hoaslamnotvar_gthm )
                                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                                     => ~ pushprop_lem2v2 )
                                                                                 => ~ hoasinduction_lem3a_gthm )
                                                                             => ~ axclos )
                                                                         => ~ axassoc )
                                                                     => ( hoasinduction_lem2v2
                                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                             => ~ ! [X5: term,X6: term] :
                                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                         => ~ ! [X5: term] :
                                                                                                ( ( X2 @ X5 )
                                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                                     => ~ ( X2 @ X3 ) )
                                                                                 => ~ ( X2 @ X4 ) )
                                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                                 => ~ pushprop_lthm )
                                                             => ( apinj2
                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                      ( ( ( ap @ X1 @ X3 )
                                                                        = ( ap @ X2 @ X4 ) )
                                                                     => ( X3 = X4 ) ) ) ) )
                                                         => ( apinj1
                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                  ( ( ( ap @ X1 @ X3 )
                                                                    = ( ap @ X2 @ X4 ) )
                                                                 => ( X1 = X2 ) ) ) ) )
                                                     => ( hoasapinj2_lthm != sP43 ) )
                                                 => ( hoasinduction_lem3v2a
                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                         => ~ ! [X5: term] :
                                                                                ( ( X1 @ id @ X5 @ id )
                                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ( X2 @ X4 )
                                                                        = ( X1 @ id @ X4 @ id ) ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ( X2 @ X4 )
                                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                             => ( hoasapinj1_lthm
                                               != ( ! [X1: term] :
                                                      ( X1
                                                      = ( sub @ X1 @ id ) )
                                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                        ( ( ( ap @ X1 @ X3 )
                                                          = ( ap @ X2 @ X4 ) )
                                                       => ( X1 = X2 ) )
                                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                       => ( X1 = X2 ) ) ) ) ) )
                                         => ( hoaslaminj_lthm
                                           != ( ! [X1: term,X2: subst] :
                                                  ( X1
                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                             => ( ! [X1: term,X2: subst] :
                                                    ( X2
                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                               => ( ! [X1: term,X2: term] :
                                                      ( ( ( lam @ X1 )
                                                        = ( lam @ X2 ) )
                                                     => ( X1 = X2 ) )
                                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                     => ( ( X1 @ X3 @ X4 )
                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                     => ( axvarcons
                                       != ( ! [X1: term,X2: subst] :
                                              ( X1
                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                                 => ( axscons
                                   != ( ! [X1: subst] :
                                          ( X1
                                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                             => ~ hoasinduction_lem2v2_gthm )
                         => ( axidr != sP17 ) )
                     => ( pushprop_lem1 != sP12 ) )
                 => ( laminj
                   != ( ! [X1: term,X2: term] :
                          ( ( ( lam @ X1 )
                            = ( lam @ X2 ) )
                         => ( X1 = X2 ) ) ) ) )
             => ( hoasinduction_lem3_lthm
               != ( ! [X1: term] :
                      ( X1
                      = ( sub @ X1 @ id ) )
                 => ( sP40
                   => ! [X1: subst > term > subst > $o,X2: term] :
                        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                               => ~ ! [X3: subst > term > term] :
                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                         => ~ ! [X4: term] :
                                                ( ( X1 @ id @ X4 @ id )
                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                           => ~ ! [X3: term] :
                                  ( ( X1 @ id @ X3 @ id )
                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
         => ( pushprop_lem0 != sP41 ) )
     => ~ pushprop_gthm ),
    introduced(assumption,[]) ).

thf(h94,assumption,
    axabs,
    introduced(assumption,[]) ).

thf(h95,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                             => ( hoasinduction
                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                                     => ~ axapp )
                                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                     => ~ ulamvarind )
                                                                                                                 => ( induction
                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                      ( ( var @ X3 )
                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ( X1 @ X3 )
                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                                               != ( ! [X1: term] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                 => ( sP40
                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                         => ~ termmset_gthm )
                                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                                             => ~ hoaslamnotap_gthm )
                                                                                         => ~ hoaslamnotvar_gthm )
                                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                                 => ~ pushprop_lem2v2 )
                                                                             => ~ hoasinduction_lem3a_gthm )
                                                                         => ~ axclos )
                                                                     => ~ axassoc )
                                                                 => ( hoasinduction_lem2v2
                                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                         => ~ ! [X5: term,X6: term] :
                                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                     => ~ ! [X5: term] :
                                                                                            ( ( X2 @ X5 )
                                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                                 => ~ ( X2 @ X3 ) )
                                                                             => ~ ( X2 @ X4 ) )
                                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                             => ~ pushprop_lthm )
                                                         => ( apinj2
                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                  ( ( ( ap @ X1 @ X3 )
                                                                    = ( ap @ X2 @ X4 ) )
                                                                 => ( X3 = X4 ) ) ) ) )
                                                     => ( apinj1
                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                              ( ( ( ap @ X1 @ X3 )
                                                                = ( ap @ X2 @ X4 ) )
                                                             => ( X1 = X2 ) ) ) ) )
                                                 => ( hoasapinj2_lthm != sP43 ) )
                                             => ( hoasinduction_lem3v2a
                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                     => ~ ! [X5: term] :
                                                                            ( ( X1 @ id @ X5 @ id )
                                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ( X2 @ X4 )
                                                                    = ( X1 @ id @ X4 @ id ) ) )
                                                         => ~ ! [X4: term] :
                                                                ( ( X2 @ X4 )
                                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                         => ( hoasapinj1_lthm
                                           != ( ! [X1: term] :
                                                  ( X1
                                                  = ( sub @ X1 @ id ) )
                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                    ( ( ( ap @ X1 @ X3 )
                                                      = ( ap @ X2 @ X4 ) )
                                                   => ( X1 = X2 ) )
                                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                   => ( X1 = X2 ) ) ) ) ) )
                                     => ( hoaslaminj_lthm
                                       != ( ! [X1: term,X2: subst] :
                                              ( X1
                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                         => ( ! [X1: term,X2: subst] :
                                                ( X2
                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                           => ( ! [X1: term,X2: term] :
                                                  ( ( ( lam @ X1 )
                                                    = ( lam @ X2 ) )
                                                 => ( X1 = X2 ) )
                                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                 => ( ( X1 @ X3 @ X4 )
                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                                 => ( axvarcons
                                   != ( ! [X1: term,X2: subst] :
                                          ( X1
                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                             => ( axscons
                               != ( ! [X1: subst] :
                                      ( X1
                                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                         => ~ hoasinduction_lem2v2_gthm )
                     => ( axidr != sP17 ) )
                 => ( pushprop_lem1 != sP12 ) )
             => ( laminj
               != ( ! [X1: term,X2: term] :
                      ( ( ( lam @ X1 )
                        = ( lam @ X2 ) )
                     => ( X1 = X2 ) ) ) ) )
         => ( hoasinduction_lem3_lthm
           != ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) )
             => ( sP40
               => ! [X1: subst > term > subst > $o,X2: term] :
                    ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                           => ~ ! [X3: subst > term > term] :
                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                     => ~ ! [X4: term] :
                                            ( ( X1 @ id @ X4 @ id )
                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                       => ~ ! [X3: term] :
                              ( ( X1 @ id @ X3 @ id )
                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
     => ( pushprop_lem0 != sP41 ) ),
    introduced(assumption,[]) ).

thf(h96,assumption,
    pushprop_gthm,
    introduced(assumption,[]) ).

thf(h97,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                               != ( sP10
                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                         => ( hoasinduction
                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                                 => ~ axapp )
                                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                                 => ~ ulamvarind )
                                                                                                             => ( induction
                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                  ( ( var @ X3 )
                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ( X1 @ X3 )
                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                                           != ( ! [X1: term] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                             => ( sP40
                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                       => ~ ! [X3: term] :
                                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                     => ~ termmset_gthm )
                                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                                             => ~ pushprop_lem1v2_gthm )
                                                                                         => ~ hoaslamnotap_gthm )
                                                                                     => ~ hoaslamnotvar_gthm )
                                                                                 => ~ hoasinduction_lem3b_gthm )
                                                                             => ~ pushprop_lem2v2 )
                                                                         => ~ hoasinduction_lem3a_gthm )
                                                                     => ~ axclos )
                                                                 => ~ axassoc )
                                                             => ( hoasinduction_lem2v2
                                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                     => ~ ! [X5: term,X6: term] :
                                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                                 => ~ ! [X5: term] :
                                                                                        ( ( X2 @ X5 )
                                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                                             => ~ ( X2 @ X3 ) )
                                                                         => ~ ( X2 @ X4 ) )
                                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                         => ~ pushprop_lthm )
                                                     => ( apinj2
                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                              ( ( ( ap @ X1 @ X3 )
                                                                = ( ap @ X2 @ X4 ) )
                                                             => ( X3 = X4 ) ) ) ) )
                                                 => ( apinj1
                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                          ( ( ( ap @ X1 @ X3 )
                                                            = ( ap @ X2 @ X4 ) )
                                                         => ( X1 = X2 ) ) ) ) )
                                             => ( hoasapinj2_lthm != sP43 ) )
                                         => ( hoasinduction_lem3v2a
                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                 => ~ ! [X5: term] :
                                                                        ( ( X1 @ id @ X5 @ id )
                                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                         => ~ ! [X4: term] :
                                                                ( ( X2 @ X4 )
                                                                = ( X1 @ id @ X4 @ id ) ) )
                                                     => ~ ! [X4: term] :
                                                            ( ( X2 @ X4 )
                                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                     => ( hoasapinj1_lthm
                                       != ( ! [X1: term] :
                                              ( X1
                                              = ( sub @ X1 @ id ) )
                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                ( ( ( ap @ X1 @ X3 )
                                                  = ( ap @ X2 @ X4 ) )
                                               => ( X1 = X2 ) )
                                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                               => ( X1 = X2 ) ) ) ) ) )
                                 => ( hoaslaminj_lthm
                                   != ( ! [X1: term,X2: subst] :
                                          ( X1
                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                     => ( ! [X1: term,X2: subst] :
                                            ( X2
                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                       => ( ! [X1: term,X2: term] :
                                              ( ( ( lam @ X1 )
                                                = ( lam @ X2 ) )
                                             => ( X1 = X2 ) )
                                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                             => ( ( X1 @ X3 @ X4 )
                                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                             => ( axvarcons
                               != ( ! [X1: term,X2: subst] :
                                      ( X1
                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                         => ( axscons
                           != ( ! [X1: subst] :
                                  ( X1
                                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                     => ~ hoasinduction_lem2v2_gthm )
                 => ( axidr != sP17 ) )
             => ( pushprop_lem1 != sP12 ) )
         => ( laminj
           != ( ! [X1: term,X2: term] :
                  ( ( ( lam @ X1 )
                    = ( lam @ X2 ) )
                 => ( X1 = X2 ) ) ) ) )
     => ( hoasinduction_lem3_lthm
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( sP40
           => ! [X1: subst > term > subst > $o,X2: term] :
                ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                       => ~ ! [X3: subst > term > term] :
                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                 => ~ ! [X4: term] :
                                        ( ( X1 @ id @ X4 @ id )
                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                   => ~ ! [X3: term] :
                          ( ( X1 @ id @ X3 @ id )
                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h98,assumption,
    pushprop_lem0 = sP41,
    introduced(assumption,[]) ).

thf(h99,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                           != ( sP10
                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                             => ~ hoasapnotvar )
                                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                     => ( hoasinduction
                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                                             => ~ axapp )
                                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                             => ~ ulamvarind )
                                                                                                         => ( induction
                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                              ( ( var @ X3 )
                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ( X1 @ X3 )
                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                                       != ( ! [X1: term] :
                                                                                                              ( X1
                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                         => ( sP40
                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                   => ~ ! [X3: term] :
                                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                                 => ~ termmset_gthm )
                                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                                         => ~ pushprop_lem1v2_gthm )
                                                                                     => ~ hoaslamnotap_gthm )
                                                                                 => ~ hoaslamnotvar_gthm )
                                                                             => ~ hoasinduction_lem3b_gthm )
                                                                         => ~ pushprop_lem2v2 )
                                                                     => ~ hoasinduction_lem3a_gthm )
                                                                 => ~ axclos )
                                                             => ~ axassoc )
                                                         => ( hoasinduction_lem2v2
                                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                                 => ~ ! [X5: term,X6: term] :
                                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                             => ~ ! [X5: term] :
                                                                                    ( ( X2 @ X5 )
                                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                                         => ~ ( X2 @ X3 ) )
                                                                     => ~ ( X2 @ X4 ) )
                                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                     => ~ pushprop_lthm )
                                                 => ( apinj2
                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                          ( ( ( ap @ X1 @ X3 )
                                                            = ( ap @ X2 @ X4 ) )
                                                         => ( X3 = X4 ) ) ) ) )
                                             => ( apinj1
                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                      ( ( ( ap @ X1 @ X3 )
                                                        = ( ap @ X2 @ X4 ) )
                                                     => ( X1 = X2 ) ) ) ) )
                                         => ( hoasapinj2_lthm != sP43 ) )
                                     => ( hoasinduction_lem3v2a
                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                             => ~ ! [X5: term] :
                                                                    ( ( X1 @ id @ X5 @ id )
                                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                     => ~ ! [X4: term] :
                                                            ( ( X2 @ X4 )
                                                            = ( X1 @ id @ X4 @ id ) ) )
                                                 => ~ ! [X4: term] :
                                                        ( ( X2 @ X4 )
                                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                                 => ( hoasapinj1_lthm
                                   != ( ! [X1: term] :
                                          ( X1
                                          = ( sub @ X1 @ id ) )
                                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                            ( ( ( ap @ X1 @ X3 )
                                              = ( ap @ X2 @ X4 ) )
                                           => ( X1 = X2 ) )
                                       => ! [X1: term,X2: term,X3: term,X4: term] :
                                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                           => ( X1 = X2 ) ) ) ) ) )
                             => ( hoaslaminj_lthm
                               != ( ! [X1: term,X2: subst] :
                                      ( X1
                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                 => ( ! [X1: term,X2: subst] :
                                        ( X2
                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                   => ( ! [X1: term,X2: term] :
                                          ( ( ( lam @ X1 )
                                            = ( lam @ X2 ) )
                                         => ( X1 = X2 ) )
                                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                         => ( ( X1 @ X3 @ X4 )
                                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                         => ( axvarcons
                           != ( ! [X1: term,X2: subst] :
                                  ( X1
                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                     => ( axscons
                       != ( ! [X1: subst] :
                              ( X1
                              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
                 => ~ hoasinduction_lem2v2_gthm )
             => ( axidr != sP17 ) )
         => ( pushprop_lem1 != sP12 ) )
     => ( laminj
       != ( ! [X1: term,X2: term] :
              ( ( ( lam @ X1 )
                = ( lam @ X2 ) )
             => ( X1 = X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h100,assumption,
    ( hoasinduction_lem3_lthm
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( sP40
       => ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X3: term] :
                      ( ( X1 @ id @ X3 @ id )
                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h101,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                       != ( sP10
                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                         => ~ hoasapnotvar )
                                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                                 => ( hoasinduction
                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                             => ~ hoasinduction_gthm )
                                                                                                                         => ~ axapp )
                                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                         => ~ ulamvarind )
                                                                                                     => ( induction
                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                          ( ( var @ X3 )
                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ( X1 @ X3 )
                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                                   != ( ! [X1: term] :
                                                                                                          ( X1
                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                     => ( sP40
                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                               => ~ ! [X3: term] :
                                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                             => ~ termmset_gthm )
                                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                                     => ~ pushprop_lem1v2_gthm )
                                                                                 => ~ hoaslamnotap_gthm )
                                                                             => ~ hoaslamnotvar_gthm )
                                                                         => ~ hoasinduction_lem3b_gthm )
                                                                     => ~ pushprop_lem2v2 )
                                                                 => ~ hoasinduction_lem3a_gthm )
                                                             => ~ axclos )
                                                         => ~ axassoc )
                                                     => ( hoasinduction_lem2v2
                                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                             => ~ ! [X5: term,X6: term] :
                                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                         => ~ ! [X5: term] :
                                                                                ( ( X2 @ X5 )
                                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                                     => ~ ( X2 @ X3 ) )
                                                                 => ~ ( X2 @ X4 ) )
                                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                                 => ~ pushprop_lthm )
                                             => ( apinj2
                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                      ( ( ( ap @ X1 @ X3 )
                                                        = ( ap @ X2 @ X4 ) )
                                                     => ( X3 = X4 ) ) ) ) )
                                         => ( apinj1
                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                  ( ( ( ap @ X1 @ X3 )
                                                    = ( ap @ X2 @ X4 ) )
                                                 => ( X1 = X2 ) ) ) ) )
                                     => ( hoasapinj2_lthm != sP43 ) )
                                 => ( hoasinduction_lem3v2a
                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                         => ~ ! [X5: term] :
                                                                ( ( X1 @ id @ X5 @ id )
                                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                 => ~ ! [X4: term] :
                                                        ( ( X2 @ X4 )
                                                        = ( X1 @ id @ X4 @ id ) ) )
                                             => ~ ! [X4: term] :
                                                    ( ( X2 @ X4 )
                                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                             => ( hoasapinj1_lthm
                               != ( ! [X1: term] :
                                      ( X1
                                      = ( sub @ X1 @ id ) )
                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                        ( ( ( ap @ X1 @ X3 )
                                          = ( ap @ X2 @ X4 ) )
                                       => ( X1 = X2 ) )
                                   => ! [X1: term,X2: term,X3: term,X4: term] :
                                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                       => ( X1 = X2 ) ) ) ) ) )
                         => ( hoaslaminj_lthm
                           != ( ! [X1: term,X2: subst] :
                                  ( X1
                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                             => ( ! [X1: term,X2: subst] :
                                    ( X2
                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                               => ( ! [X1: term,X2: term] :
                                      ( ( ( lam @ X1 )
                                        = ( lam @ X2 ) )
                                     => ( X1 = X2 ) )
                                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                     => ( ( X1 @ X3 @ X4 )
                                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                     => ( axvarcons
                       != ( ! [X1: term,X2: subst] :
                              ( X1
                              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
                 => ( axscons
                   != ( ! [X1: subst] :
                          ( X1
                          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
             => ~ hoasinduction_lem2v2_gthm )
         => ( axidr != sP17 ) )
     => ( pushprop_lem1 != sP12 ) ),
    introduced(assumption,[]) ).

thf(h102,assumption,
    ( laminj
    = ( ! [X1: term,X2: term] :
          ( ( ( lam @ X1 )
            = ( lam @ X2 ) )
         => ( X1 = X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h103,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                                   != ( sP10
                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                                              ( X1
                                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                     => ~ hoasapnotvar )
                                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                             => ( hoasinduction
                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                         => ~ hoasinduction_gthm )
                                                                                                                     => ~ axapp )
                                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                     => ~ ulamvarind )
                                                                                                 => ( induction
                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                      ( ( var @ X3 )
                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ( X1 @ X3 )
                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                                             => ( hoasinduction_lem3a_lthm
                                                                                               != ( ! [X1: term] :
                                                                                                      ( X1
                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                 => ( sP40
                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                           => ~ ! [X3: term] :
                                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                         => ~ termmset_gthm )
                                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                                 => ~ pushprop_lem1v2_gthm )
                                                                             => ~ hoaslamnotap_gthm )
                                                                         => ~ hoaslamnotvar_gthm )
                                                                     => ~ hoasinduction_lem3b_gthm )
                                                                 => ~ pushprop_lem2v2 )
                                                             => ~ hoasinduction_lem3a_gthm )
                                                         => ~ axclos )
                                                     => ~ axassoc )
                                                 => ( hoasinduction_lem2v2
                                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                         => ~ ! [X5: term,X6: term] :
                                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                     => ~ ! [X5: term] :
                                                                            ( ( X2 @ X5 )
                                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                                 => ~ ( X2 @ X3 ) )
                                                             => ~ ( X2 @ X4 ) )
                                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                             => ~ pushprop_lthm )
                                         => ( apinj2
                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                  ( ( ( ap @ X1 @ X3 )
                                                    = ( ap @ X2 @ X4 ) )
                                                 => ( X3 = X4 ) ) ) ) )
                                     => ( apinj1
                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                              ( ( ( ap @ X1 @ X3 )
                                                = ( ap @ X2 @ X4 ) )
                                             => ( X1 = X2 ) ) ) ) )
                                 => ( hoasapinj2_lthm != sP43 ) )
                             => ( hoasinduction_lem3v2a
                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                     => ~ ! [X5: term] :
                                                            ( ( X1 @ id @ X5 @ id )
                                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                             => ~ ! [X4: term] :
                                                    ( ( X2 @ X4 )
                                                    = ( X1 @ id @ X4 @ id ) ) )
                                         => ~ ! [X4: term] :
                                                ( ( X2 @ X4 )
                                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                         => ( hoasapinj1_lthm
                           != ( ! [X1: term] :
                                  ( X1
                                  = ( sub @ X1 @ id ) )
                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                    ( ( ( ap @ X1 @ X3 )
                                      = ( ap @ X2 @ X4 ) )
                                   => ( X1 = X2 ) )
                               => ! [X1: term,X2: term,X3: term,X4: term] :
                                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                   => ( X1 = X2 ) ) ) ) ) )
                     => ( hoaslaminj_lthm
                       != ( ! [X1: term,X2: subst] :
                              ( X1
                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                         => ( ! [X1: term,X2: subst] :
                                ( X2
                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                           => ( ! [X1: term,X2: term] :
                                  ( ( ( lam @ X1 )
                                    = ( lam @ X2 ) )
                                 => ( X1 = X2 ) )
                             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                 => ( ( X1 @ X3 @ X4 )
                                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
                 => ( axvarcons
                   != ( ! [X1: term,X2: subst] :
                          ( X1
                          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
             => ( axscons
               != ( ! [X1: subst] :
                      ( X1
                      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
         => ~ hoasinduction_lem2v2_gthm )
     => ( axidr != sP17 ) ),
    introduced(assumption,[]) ).

thf(h104,assumption,
    pushprop_lem1 = sP12,
    introduced(assumption,[]) ).

thf(h105,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                                ( X2
                                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                               != ( sP10
                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                                          ( X1
                                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                                 => ~ hoasapnotvar )
                                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                         => ( hoasinduction
                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                     => ~ hoasinduction_gthm )
                                                                                                                 => ~ axapp )
                                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                                 => ~ ulamvarind )
                                                                                             => ( induction
                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                  ( ( var @ X3 )
                                                                                                                 => ( X1 @ X3 ) )
                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ( X1 @ X3 )
                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                                         => ( hoasinduction_lem3a_lthm
                                                                                           != ( ! [X1: term] :
                                                                                                  ( X1
                                                                                                  = ( sub @ X1 @ id ) )
                                                                                             => ( sP40
                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                       => ~ ! [X3: term] :
                                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                     => ~ termmset_gthm )
                                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                                             => ~ pushprop_lem1v2_gthm )
                                                                         => ~ hoaslamnotap_gthm )
                                                                     => ~ hoaslamnotvar_gthm )
                                                                 => ~ hoasinduction_lem3b_gthm )
                                                             => ~ pushprop_lem2v2 )
                                                         => ~ hoasinduction_lem3a_gthm )
                                                     => ~ axclos )
                                                 => ~ axassoc )
                                             => ( hoasinduction_lem2v2
                                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                     => ~ ! [X5: term,X6: term] :
                                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                                 => ~ ! [X5: term] :
                                                                        ( ( X2 @ X5 )
                                                                        = ( X1 @ id @ X5 @ id ) ) )
                                                             => ~ ( X2 @ X3 ) )
                                                         => ~ ( X2 @ X4 ) )
                                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                         => ~ pushprop_lthm )
                                     => ( apinj2
                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                              ( ( ( ap @ X1 @ X3 )
                                                = ( ap @ X2 @ X4 ) )
                                             => ( X3 = X4 ) ) ) ) )
                                 => ( apinj1
                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                          ( ( ( ap @ X1 @ X3 )
                                            = ( ap @ X2 @ X4 ) )
                                         => ( X1 = X2 ) ) ) ) )
                             => ( hoasapinj2_lthm != sP43 ) )
                         => ( hoasinduction_lem3v2a
                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                 => ~ ! [X5: term] :
                                                        ( ( X1 @ id @ X5 @ id )
                                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                         => ~ ! [X4: term] :
                                                ( ( X2 @ X4 )
                                                = ( X1 @ id @ X4 @ id ) ) )
                                     => ~ ! [X4: term] :
                                            ( ( X2 @ X4 )
                                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                     => ( hoasapinj1_lthm
                       != ( ! [X1: term] :
                              ( X1
                              = ( sub @ X1 @ id ) )
                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                ( ( ( ap @ X1 @ X3 )
                                  = ( ap @ X2 @ X4 ) )
                               => ( X1 = X2 ) )
                           => ! [X1: term,X2: term,X3: term,X4: term] :
                                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                               => ( X1 = X2 ) ) ) ) ) )
                 => ( hoaslaminj_lthm
                   != ( ! [X1: term,X2: subst] :
                          ( X1
                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                     => ( ! [X1: term,X2: subst] :
                            ( X2
                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                       => ( ! [X1: term,X2: term] :
                              ( ( ( lam @ X1 )
                                = ( lam @ X2 ) )
                             => ( X1 = X2 ) )
                         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                             => ( ( X1 @ X3 @ X4 )
                                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
             => ( axvarcons
               != ( ! [X1: term,X2: subst] :
                      ( X1
                      = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
         => ( axscons
           != ( ! [X1: subst] :
                  ( X1
                  = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) )
     => ~ hoasinduction_lem2v2_gthm ),
    introduced(assumption,[]) ).

thf(h106,assumption,
    axidr = sP17,
    introduced(assumption,[]) ).

thf(h107,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                            ( X2
                                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                           != ( sP10
                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                                      ( X1
                                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                             => ~ hoasapnotvar )
                                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                     => ( hoasinduction
                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                                 => ~ hoasinduction_gthm )
                                                                                                             => ~ axapp )
                                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                             => ~ ulamvarind )
                                                                                         => ( induction
                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                              ( ( var @ X3 )
                                                                                                             => ( X1 @ X3 ) )
                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ( X1 @ X3 )
                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                                     => ( hoasinduction_lem3a_lthm
                                                                                       != ( ! [X1: term] :
                                                                                              ( X1
                                                                                              = ( sub @ X1 @ id ) )
                                                                                         => ( sP40
                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                   => ~ ! [X3: term] :
                                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                                 => ~ termmset_gthm )
                                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                                         => ~ pushprop_lem1v2_gthm )
                                                                     => ~ hoaslamnotap_gthm )
                                                                 => ~ hoaslamnotvar_gthm )
                                                             => ~ hoasinduction_lem3b_gthm )
                                                         => ~ pushprop_lem2v2 )
                                                     => ~ hoasinduction_lem3a_gthm )
                                                 => ~ axclos )
                                             => ~ axassoc )
                                         => ( hoasinduction_lem2v2
                                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                                 => ~ ! [X5: term,X6: term] :
                                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                             => ~ ! [X5: term] :
                                                                    ( ( X2 @ X5 )
                                                                    = ( X1 @ id @ X5 @ id ) ) )
                                                         => ~ ( X2 @ X3 ) )
                                                     => ~ ( X2 @ X4 ) )
                                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                     => ~ pushprop_lthm )
                                 => ( apinj2
                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                          ( ( ( ap @ X1 @ X3 )
                                            = ( ap @ X2 @ X4 ) )
                                         => ( X3 = X4 ) ) ) ) )
                             => ( apinj1
                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                      ( ( ( ap @ X1 @ X3 )
                                        = ( ap @ X2 @ X4 ) )
                                     => ( X1 = X2 ) ) ) ) )
                         => ( hoasapinj2_lthm != sP43 ) )
                     => ( hoasinduction_lem3v2a
                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                              ( ~ ( ~ ( ! [X4: subst > term > term] :
                                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                             => ~ ! [X5: term] :
                                                    ( ( X1 @ id @ X5 @ id )
                                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                     => ~ ! [X4: term] :
                                            ( ( X2 @ X4 )
                                            = ( X1 @ id @ X4 @ id ) ) )
                                 => ~ ! [X4: term] :
                                        ( ( X2 @ X4 )
                                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                             => ( X2 @ ( lam @ X3 ) ) ) ) ) )
                 => ( hoasapinj1_lthm
                   != ( ! [X1: term] :
                          ( X1
                          = ( sub @ X1 @ id ) )
                     => ( ! [X1: term,X2: term,X3: term,X4: term] :
                            ( ( ( ap @ X1 @ X3 )
                              = ( ap @ X2 @ X4 ) )
                           => ( X1 = X2 ) )
                       => ! [X1: term,X2: term,X3: term,X4: term] :
                            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                           => ( X1 = X2 ) ) ) ) ) )
             => ( hoaslaminj_lthm
               != ( ! [X1: term,X2: subst] :
                      ( X1
                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                 => ( ! [X1: term,X2: subst] :
                        ( X2
                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                   => ( ! [X1: term,X2: term] :
                          ( ( ( lam @ X1 )
                            = ( lam @ X2 ) )
                         => ( X1 = X2 ) )
                     => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                             => ( ( lam @ ( X1 @ sh @ one ) )
                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                         => ( ( X1 @ X3 @ X4 )
                            = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
         => ( axvarcons
           != ( ! [X1: term,X2: subst] :
                  ( X1
                  = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) )
     => ( axscons
       != ( ! [X1: subst] :
              ( X1
              = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h108,assumption,
    hoasinduction_lem2v2_gthm,
    introduced(assumption,[]) ).

thf(h109,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                        ( X2
                                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                       != ( sP10
                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                                  ( X1
                                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                             => ( hoasinduction_lem2
                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                         => ~ hoasapnotvar )
                                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                                 => ( hoasinduction
                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                             => ~ hoasinduction_gthm )
                                                                                                         => ~ axapp )
                                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                         => ~ ulamvarind )
                                                                                     => ( induction
                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                          ( ( var @ X3 )
                                                                                                         => ( X1 @ X3 ) )
                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ( X1 @ X3 )
                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                                 => ( hoasinduction_lem3a_lthm
                                                                                   != ( ! [X1: term] :
                                                                                          ( X1
                                                                                          = ( sub @ X1 @ id ) )
                                                                                     => ( sP40
                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                               => ~ ! [X3: term] :
                                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                             => ~ termmset_gthm )
                                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                                     => ~ pushprop_lem1v2_gthm )
                                                                 => ~ hoaslamnotap_gthm )
                                                             => ~ hoaslamnotvar_gthm )
                                                         => ~ hoasinduction_lem3b_gthm )
                                                     => ~ pushprop_lem2v2 )
                                                 => ~ hoasinduction_lem3a_gthm )
                                             => ~ axclos )
                                         => ~ axassoc )
                                     => ( hoasinduction_lem2v2
                                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                             => ~ ! [X5: term,X6: term] :
                                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                         => ~ ! [X5: term] :
                                                                ( ( X2 @ X5 )
                                                                = ( X1 @ id @ X5 @ id ) ) )
                                                     => ~ ( X2 @ X3 ) )
                                                 => ~ ( X2 @ X4 ) )
                                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                                 => ~ pushprop_lthm )
                             => ( apinj2
                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                      ( ( ( ap @ X1 @ X3 )
                                        = ( ap @ X2 @ X4 ) )
                                     => ( X3 = X4 ) ) ) ) )
                         => ( apinj1
                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                  ( ( ( ap @ X1 @ X3 )
                                    = ( ap @ X2 @ X4 ) )
                                 => ( X1 = X2 ) ) ) ) )
                     => ( hoasapinj2_lthm != sP43 ) )
                 => ( hoasinduction_lem3v2a
                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                          ( ~ ( ~ ( ! [X4: subst > term > term] :
                                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                         => ~ ! [X5: term] :
                                                ( ( X1 @ id @ X5 @ id )
                                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                 => ~ ! [X4: term] :
                                        ( ( X2 @ X4 )
                                        = ( X1 @ id @ X4 @ id ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X2 @ X4 )
                                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                         => ( X2 @ ( lam @ X3 ) ) ) ) ) )
             => ( hoasapinj1_lthm
               != ( ! [X1: term] :
                      ( X1
                      = ( sub @ X1 @ id ) )
                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                        ( ( ( ap @ X1 @ X3 )
                          = ( ap @ X2 @ X4 ) )
                       => ( X1 = X2 ) )
                   => ! [X1: term,X2: term,X3: term,X4: term] :
                        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                       => ( X1 = X2 ) ) ) ) ) )
         => ( hoaslaminj_lthm
           != ( ! [X1: term,X2: subst] :
                  ( X1
                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
             => ( ! [X1: term,X2: subst] :
                    ( X2
                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
               => ( ! [X1: term,X2: term] :
                      ( ( ( lam @ X1 )
                        = ( lam @ X2 ) )
                     => ( X1 = X2 ) )
                 => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                         => ( ( lam @ ( X1 @ sh @ one ) )
                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                     => ( ( X1 @ X3 @ X4 )
                        = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) )
     => ( axvarcons
       != ( ! [X1: term,X2: subst] :
              ( X1
              = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h110,assumption,
    ( axscons
    = ( ! [X1: subst] :
          ( X1
          = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h111,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                    ( X2
                                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                               => ( sP17
                                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                                   != ( sP10
                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                                              ( X1
                                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                             => ( hoaslaminj
                                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                             => ( hoasinduction_lem3
                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                         => ( hoasinduction_lem2
                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                     => ~ hoasapnotvar )
                                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                                             => ( hoasinduction
                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                         => ~ hoasinduction_gthm )
                                                                                                     => ~ axapp )
                                                                                                 => ~ hoaslamnotvar_lthm )
                                                                                             => ~ pushprop_lem3v2_lthm )
                                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                     => ~ ulamvarind )
                                                                                 => ( induction
                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                      ( ( var @ X3 )
                                                                                                     => ( X1 @ X3 ) )
                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ( X1 @ X3 )
                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                         => ( X1 @ X2 ) ) ) ) )
                                                                             => ( hoasinduction_lem3a_lthm
                                                                               != ( ! [X1: term] :
                                                                                      ( X1
                                                                                      = ( sub @ X1 @ id ) )
                                                                                 => ( sP40
                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                           => ~ ! [X3: term] :
                                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                         => ~ termmset_gthm )
                                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                                 => ~ pushprop_lem1v2_gthm )
                                                             => ~ hoaslamnotap_gthm )
                                                         => ~ hoaslamnotvar_gthm )
                                                     => ~ hoasinduction_lem3b_gthm )
                                                 => ~ pushprop_lem2v2 )
                                             => ~ hoasinduction_lem3a_gthm )
                                         => ~ axclos )
                                     => ~ axassoc )
                                 => ( hoasinduction_lem2v2
                                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                         => ~ ! [X5: term,X6: term] :
                                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                     => ~ ! [X5: term] :
                                                            ( ( X2 @ X5 )
                                                            = ( X1 @ id @ X5 @ id ) ) )
                                                 => ~ ( X2 @ X3 ) )
                                             => ~ ( X2 @ X4 ) )
                                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                             => ~ pushprop_lthm )
                         => ( apinj2
                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                  ( ( ( ap @ X1 @ X3 )
                                    = ( ap @ X2 @ X4 ) )
                                 => ( X3 = X4 ) ) ) ) )
                     => ( apinj1
                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                              ( ( ( ap @ X1 @ X3 )
                                = ( ap @ X2 @ X4 ) )
                             => ( X1 = X2 ) ) ) ) )
                 => ( hoasapinj2_lthm != sP43 ) )
             => ( hoasinduction_lem3v2a
               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                      ( ~ ( ~ ( ! [X4: subst > term > term] :
                                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                     => ~ ! [X5: term] :
                                            ( ( X1 @ id @ X5 @ id )
                                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                             => ~ ! [X4: term] :
                                    ( ( X2 @ X4 )
                                    = ( X1 @ id @ X4 @ id ) ) )
                         => ~ ! [X4: term] :
                                ( ( X2 @ X4 )
                               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                     => ( X2 @ ( lam @ X3 ) ) ) ) ) )
         => ( hoasapinj1_lthm
           != ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) )
             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                    ( ( ( ap @ X1 @ X3 )
                      = ( ap @ X2 @ X4 ) )
                   => ( X1 = X2 ) )
               => ! [X1: term,X2: term,X3: term,X4: term] :
                    ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                      = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                   => ( X1 = X2 ) ) ) ) ) )
     => ( hoaslaminj_lthm
       != ( ! [X1: term,X2: subst] :
              ( X1
              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
         => ( ! [X1: term,X2: subst] :
                ( X2
                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
           => ( ! [X1: term,X2: term] :
                  ( ( ( lam @ X1 )
                    = ( lam @ X2 ) )
                 => ( X1 = X2 ) )
             => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                     => ( ( lam @ ( X1 @ sh @ one ) )
                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                 => ( ( X1 @ X3 @ X4 )
                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h112,assumption,
    ( axvarcons
    = ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h113,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                              ( X1
                                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                                ( X2
                                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                           => ( sP17
                                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                               != ( sP10
                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                         => ( hoaslaminj
                                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                         => ( hoasinduction_lem3
                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                     => ( hoasinduction_lem2
                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                                 => ~ hoasapnotvar )
                                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                                         => ( hoasinduction
                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                     => ~ hoasinduction_gthm )
                                                                                                 => ~ axapp )
                                                                                             => ~ hoaslamnotvar_lthm )
                                                                                         => ~ pushprop_lem3v2_lthm )
                                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                                 => ~ ulamvarind )
                                                                             => ( induction
                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                  ( ( var @ X3 )
                                                                                                 => ( X1 @ X3 ) )
                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ( X1 @ X3 )
                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                     => ( X1 @ X2 ) ) ) ) )
                                                                         => ( hoasinduction_lem3a_lthm
                                                                           != ( ! [X1: term] :
                                                                                  ( X1
                                                                                  = ( sub @ X1 @ id ) )
                                                                             => ( sP40
                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                       => ~ ! [X3: term] :
                                                                                              ( ( X1 @ id @ X3 @ id )
                                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                     => ~ termmset_gthm )
                                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                                             => ~ pushprop_lem1v2_gthm )
                                                         => ~ hoaslamnotap_gthm )
                                                     => ~ hoaslamnotvar_gthm )
                                                 => ~ hoasinduction_lem3b_gthm )
                                             => ~ pushprop_lem2v2 )
                                         => ~ hoasinduction_lem3a_gthm )
                                     => ~ axclos )
                                 => ~ axassoc )
                             => ( hoasinduction_lem2v2
                               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                     => ~ ! [X5: term,X6: term] :
                                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                                               => ~ ( X1 @ id @ X6 @ id ) )
                                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                                 => ~ ! [X5: term] :
                                                        ( ( X2 @ X5 )
                                                        = ( X1 @ id @ X5 @ id ) ) )
                                             => ~ ( X2 @ X3 ) )
                                         => ~ ( X2 @ X4 ) )
                                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                         => ~ pushprop_lthm )
                     => ( apinj2
                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                              ( ( ( ap @ X1 @ X3 )
                                = ( ap @ X2 @ X4 ) )
                             => ( X3 = X4 ) ) ) ) )
                 => ( apinj1
                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                          ( ( ( ap @ X1 @ X3 )
                            = ( ap @ X2 @ X4 ) )
                         => ( X1 = X2 ) ) ) ) )
             => ( hoasapinj2_lthm != sP43 ) )
         => ( hoasinduction_lem3v2a
           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                  ( ~ ( ~ ( ! [X4: subst > term > term] :
                              ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                      ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                      = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                 => ~ ! [X5: term] :
                                        ( ( X1 @ id @ X5 @ id )
                                       => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                         => ~ ! [X4: term] :
                                ( ( X2 @ X4 )
                                = ( X1 @ id @ X4 @ id ) ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                           => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                 => ( X2 @ ( lam @ X3 ) ) ) ) ) )
     => ( hoasapinj1_lthm
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                ( ( ( ap @ X1 @ X3 )
                  = ( ap @ X2 @ X4 ) )
               => ( X1 = X2 ) )
           => ! [X1: term,X2: term,X3: term,X4: term] :
                ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                  = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
               => ( X1 = X2 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h114,assumption,
    ( hoaslaminj_lthm
    = ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( X2
            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
       => ( ! [X1: term,X2: term] :
              ( ( ( lam @ X1 )
                = ( lam @ X2 ) )
             => ( X1 = X2 ) )
         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                     => ~ ! [X5: subst,X6: term,X7: subst] :
                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                 => ( ( lam @ ( X1 @ sh @ one ) )
                   != ( lam @ ( X2 @ sh @ one ) ) ) )
             => ( ( X1 @ X3 @ X4 )
                = ( X2 @ X3 @ X4 ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h115,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                          ( X1
                                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                            ( X2
                                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                       => ( sP17
                                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                           != ( sP10
                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                     => ( hoaslaminj
                                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                     => ( hoasinduction_lem3
                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                                 => ( hoasinduction_lem2
                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                             => ~ hoasapnotvar )
                                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                                     => ( hoasinduction
                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                                 => ~ hoasinduction_gthm )
                                                                                             => ~ axapp )
                                                                                         => ~ hoaslamnotvar_lthm )
                                                                                     => ~ pushprop_lem3v2_lthm )
                                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                             => ~ ulamvarind )
                                                                         => ( induction
                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                              ( ( var @ X3 )
                                                                                             => ( X1 @ X3 ) )
                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ( X1 @ X3 )
                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                 => ( X1 @ X2 ) ) ) ) )
                                                                     => ( hoasinduction_lem3a_lthm
                                                                       != ( ! [X1: term] :
                                                                              ( X1
                                                                              = ( sub @ X1 @ id ) )
                                                                         => ( sP40
                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                   => ~ ! [X3: term] :
                                                                                          ( ( X1 @ id @ X3 @ id )
                                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                                 => ~ termmset_gthm )
                                                             => ( hoasinduction_lem3aa != sP40 ) )
                                                         => ~ pushprop_lem1v2_gthm )
                                                     => ~ hoaslamnotap_gthm )
                                                 => ~ hoaslamnotvar_gthm )
                                             => ~ hoasinduction_lem3b_gthm )
                                         => ~ pushprop_lem2v2 )
                                     => ~ hoasinduction_lem3a_gthm )
                                 => ~ axclos )
                             => ~ axassoc )
                         => ( hoasinduction_lem2v2
                           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                                 => ~ ! [X5: term,X6: term] :
                                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                                           => ~ ( X1 @ id @ X6 @ id ) )
                                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                             => ~ ! [X5: term] :
                                                    ( ( X2 @ X5 )
                                                    = ( X1 @ id @ X5 @ id ) ) )
                                         => ~ ( X2 @ X3 ) )
                                     => ~ ( X2 @ X4 ) )
                                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                     => ~ pushprop_lthm )
                 => ( apinj2
                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                          ( ( ( ap @ X1 @ X3 )
                            = ( ap @ X2 @ X4 ) )
                         => ( X3 = X4 ) ) ) ) )
             => ( apinj1
               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                      ( ( ( ap @ X1 @ X3 )
                        = ( ap @ X2 @ X4 ) )
                     => ( X1 = X2 ) ) ) ) )
         => ( hoasapinj2_lthm != sP43 ) )
     => ( hoasinduction_lem3v2a
       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
              ( ~ ( ~ ( ! [X4: subst > term > term] :
                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X1 @ id @ X5 @ id )
                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                            = ( X1 @ id @ X4 @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
             => ( X2 @ ( lam @ X3 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h116,assumption,
    ( hoasapinj1_lthm
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( ! [X1: term,X2: term,X3: term,X4: term] :
            ( ( ( ap @ X1 @ X3 )
              = ( ap @ X2 @ X4 ) )
           => ( X1 = X2 ) )
       => ! [X1: term,X2: term,X3: term,X4: term] :
            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
           => ( X1 = X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h117,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                      ( X1
                                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                        ( X2
                                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                                   => ( sP17
                                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                       != ( sP10
                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                                 => ( hoaslaminj
                                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                                 => ( hoasinduction_lem3
                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                             => ( hoasinduction_lem2
                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                         => ~ hoasapnotvar )
                                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                                 => ( hoasinduction
                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                             => ~ hoasinduction_gthm )
                                                                                         => ~ axapp )
                                                                                     => ~ hoaslamnotvar_lthm )
                                                                                 => ~ pushprop_lem3v2_lthm )
                                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                         => ~ ulamvarind )
                                                                     => ( induction
                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                          ( ( var @ X3 )
                                                                                         => ( X1 @ X3 ) )
                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                               => ~ ( X1 @ X4 ) )
                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ( X1 @ X3 )
                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                             => ( X1 @ X2 ) ) ) ) )
                                                                 => ( hoasinduction_lem3a_lthm
                                                                   != ( ! [X1: term] :
                                                                          ( X1
                                                                          = ( sub @ X1 @ id ) )
                                                                     => ( sP40
                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                               => ~ ! [X3: term] :
                                                                                      ( ( X1 @ id @ X3 @ id )
                                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                             => ~ termmset_gthm )
                                                         => ( hoasinduction_lem3aa != sP40 ) )
                                                     => ~ pushprop_lem1v2_gthm )
                                                 => ~ hoaslamnotap_gthm )
                                             => ~ hoaslamnotvar_gthm )
                                         => ~ hoasinduction_lem3b_gthm )
                                     => ~ pushprop_lem2v2 )
                                 => ~ hoasinduction_lem3a_gthm )
                             => ~ axclos )
                         => ~ axassoc )
                     => ( hoasinduction_lem2v2
                       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                             => ~ ! [X5: term,X6: term] :
                                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                                       => ~ ( X1 @ id @ X6 @ id ) )
                                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                         => ~ ! [X5: term] :
                                                ( ( X2 @ X5 )
                                                = ( X1 @ id @ X5 @ id ) ) )
                                     => ~ ( X2 @ X3 ) )
                                 => ~ ( X2 @ X4 ) )
                             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
                 => ~ pushprop_lthm )
             => ( apinj2
               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                      ( ( ( ap @ X1 @ X3 )
                        = ( ap @ X2 @ X4 ) )
                     => ( X3 = X4 ) ) ) ) )
         => ( apinj1
           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                  ( ( ( ap @ X1 @ X3 )
                    = ( ap @ X2 @ X4 ) )
                 => ( X1 = X2 ) ) ) ) )
     => ( hoasapinj2_lthm != sP43 ) ),
    introduced(assumption,[]) ).

thf(h118,assumption,
    ( hoasinduction_lem3v2a
    = ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
          ( ~ ( ~ ( ! [X4: subst > term > term] :
                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                         => ~ ! [X5: term] :
                                ( ( X1 @ id @ X5 @ id )
                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                        = ( X1 @ id @ X4 @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
         => ( X2 @ ( lam @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h119,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                             => ulamvar1 )
                                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                                  ( X1
                                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                    ( X2
                                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                               => ( sP17
                                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                                 => ~ apnotvar )
                                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                                   != ( sP10
                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                             => ( hoaslaminj
                                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                             => ( hoasinduction_lem3
                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                         => ( hoasinduction_lem2
                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                                 => ~ hoasinduction_lem1 )
                                                                                                             => ~ hoaslamnotap_lthm )
                                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                     => ~ hoasapnotvar )
                                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                                             => ( hoasinduction
                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                         => ~ hoasinduction_gthm )
                                                                                     => ~ axapp )
                                                                                 => ~ hoaslamnotvar_lthm )
                                                                             => ~ pushprop_lem3v2_lthm )
                                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                     => ~ ulamvarind )
                                                                 => ( induction
                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                      ( ( var @ X3 )
                                                                                     => ( X1 @ X3 ) )
                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                           => ~ ( X1 @ X4 ) )
                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ( X1 @ X3 )
                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                         => ( X1 @ X2 ) ) ) ) )
                                                             => ( hoasinduction_lem3a_lthm
                                                               != ( ! [X1: term] :
                                                                      ( X1
                                                                      = ( sub @ X1 @ id ) )
                                                                 => ( sP40
                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                           => ~ ! [X3: term] :
                                                                                  ( ( X1 @ id @ X3 @ id )
                                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                         => ~ termmset_gthm )
                                                     => ( hoasinduction_lem3aa != sP40 ) )
                                                 => ~ pushprop_lem1v2_gthm )
                                             => ~ hoaslamnotap_gthm )
                                         => ~ hoaslamnotvar_gthm )
                                     => ~ hoasinduction_lem3b_gthm )
                                 => ~ pushprop_lem2v2 )
                             => ~ hoasinduction_lem3a_gthm )
                         => ~ axclos )
                     => ~ axassoc )
                 => ( hoasinduction_lem2v2
                   != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                         => ~ ! [X5: term,X6: term] :
                                                ( ~ ( ( X1 @ id @ X5 @ id )
                                                   => ~ ( X1 @ id @ X6 @ id ) )
                                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                     => ~ ! [X5: term] :
                                            ( ( X2 @ X5 )
                                            = ( X1 @ id @ X5 @ id ) ) )
                                 => ~ ( X2 @ X3 ) )
                             => ~ ( X2 @ X4 ) )
                         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
             => ~ pushprop_lthm )
         => ( apinj2
           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                  ( ( ( ap @ X1 @ X3 )
                    = ( ap @ X2 @ X4 ) )
                 => ( X3 = X4 ) ) ) ) )
     => ( apinj1
       != ( ! [X1: term,X2: term,X3: term,X4: term] :
              ( ( ( ap @ X1 @ X3 )
                = ( ap @ X2 @ X4 ) )
             => ( X1 = X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h120,assumption,
    hoasapinj2_lthm = sP43,
    introduced(assumption,[]) ).

thf(h121,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                         => ulamvar1 )
                                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                                              ( X1
                                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                                ( X2
                                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                           => ( sP17
                                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                             => ~ apnotvar )
                                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                               != ( sP10
                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                         => ( hoaslaminj
                                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                                 => ~ induction2lem_gthm )
                                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                         => ( hoasinduction_lem3
                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                     => ( hoasinduction_lem2
                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                             => ~ hoasinduction_lem1 )
                                                                                                         => ~ hoaslamnotap_lthm )
                                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                                 => ~ hoasapnotvar )
                                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                                         => ( hoasinduction
                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                     => ~ hoasinduction_gthm )
                                                                                 => ~ axapp )
                                                                             => ~ hoaslamnotvar_lthm )
                                                                         => ~ pushprop_lem3v2_lthm )
                                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                                 => ~ ulamvarind )
                                                             => ( induction
                                                               != ( ! [X1: term > $o,X2: term] :
                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                  ( ( var @ X3 )
                                                                                 => ( X1 @ X3 ) )
                                                                             => ~ ! [X3: term,X4: term] :
                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                       => ~ ( X1 @ X4 ) )
                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ( X1 @ X3 )
                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                     => ( X1 @ X2 ) ) ) ) )
                                                         => ( hoasinduction_lem3a_lthm
                                                           != ( ! [X1: term] :
                                                                  ( X1
                                                                  = ( sub @ X1 @ id ) )
                                                             => ( sP40
                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                    ( ~ ( ! [X3: subst > term > term] :
                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                       => ~ ! [X3: term] :
                                                                              ( ( X1 @ id @ X3 @ id )
                                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                     => ~ termmset_gthm )
                                                 => ( hoasinduction_lem3aa != sP40 ) )
                                             => ~ pushprop_lem1v2_gthm )
                                         => ~ hoaslamnotap_gthm )
                                     => ~ hoaslamnotvar_gthm )
                                 => ~ hoasinduction_lem3b_gthm )
                             => ~ pushprop_lem2v2 )
                         => ~ hoasinduction_lem3a_gthm )
                     => ~ axclos )
                 => ~ axassoc )
             => ( hoasinduction_lem2v2
               != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                     => ~ ! [X5: term,X6: term] :
                                            ( ~ ( ( X1 @ id @ X5 @ id )
                                               => ~ ( X1 @ id @ X6 @ id ) )
                                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                                 => ~ ! [X5: term] :
                                        ( ( X2 @ X5 )
                                        = ( X1 @ id @ X5 @ id ) ) )
                             => ~ ( X2 @ X3 ) )
                         => ~ ( X2 @ X4 ) )
                     => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
         => ~ pushprop_lthm )
     => ( apinj2
       != ( ! [X1: term,X2: term,X3: term,X4: term] :
              ( ( ( ap @ X1 @ X3 )
                = ( ap @ X2 @ X4 ) )
             => ( X3 = X4 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h122,assumption,
    ( apinj1
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ X1 @ X3 )
            = ( ap @ X2 @ X4 ) )
         => ( X1 = X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h123,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                     => ulamvar1 )
                                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                                          ( X1
                                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                                            ( X2
                                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                       => ( sP17
                                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                         => ~ apnotvar )
                                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                             => ( hoasinduction_lthm
                                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                           != ( sP10
                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                               => ( ! [X1: term] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                     => ( hoaslaminj
                                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                             => ~ induction2lem_gthm )
                                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                     => ( hoasinduction_lem3
                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                                 => ( hoasinduction_lem2
                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                         => ~ hoasinduction_lem1 )
                                                                                                     => ~ hoaslamnotap_lthm )
                                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                             => ~ hoasapnotvar )
                                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                                     => ( hoasinduction
                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                                 => ~ hoasinduction_gthm )
                                                                             => ~ axapp )
                                                                         => ~ hoaslamnotvar_lthm )
                                                                     => ~ pushprop_lem3v2_lthm )
                                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                             => ~ ulamvarind )
                                                         => ( induction
                                                           != ( ! [X1: term > $o,X2: term] :
                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                              ( ( var @ X3 )
                                                                             => ( X1 @ X3 ) )
                                                                         => ~ ! [X3: term,X4: term] :
                                                                                ( ~ ( ( X1 @ X3 )
                                                                                   => ~ ( X1 @ X4 ) )
                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ( X1 @ X3 )
                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                 => ( X1 @ X2 ) ) ) ) )
                                                     => ( hoasinduction_lem3a_lthm
                                                       != ( ! [X1: term] :
                                                              ( X1
                                                              = ( sub @ X1 @ id ) )
                                                         => ( sP40
                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                ( ~ ( ! [X3: subst > term > term] :
                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                   => ~ ! [X3: term] :
                                                                          ( ( X1 @ id @ X3 @ id )
                                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                                 => ~ termmset_gthm )
                                             => ( hoasinduction_lem3aa != sP40 ) )
                                         => ~ pushprop_lem1v2_gthm )
                                     => ~ hoaslamnotap_gthm )
                                 => ~ hoaslamnotvar_gthm )
                             => ~ hoasinduction_lem3b_gthm )
                         => ~ pushprop_lem2v2 )
                     => ~ hoasinduction_lem3a_gthm )
                 => ~ axclos )
             => ~ axassoc )
         => ( hoasinduction_lem2v2
           != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
                  ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                          ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                         => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                     => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                            ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                           => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                                 => ~ ! [X5: term,X6: term] :
                                        ( ~ ( ( X1 @ id @ X5 @ id )
                                           => ~ ( X1 @ id @ X6 @ id ) )
                                       => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X2 @ X5 )
                                    = ( X1 @ id @ X5 @ id ) ) )
                         => ~ ( X2 @ X3 ) )
                     => ~ ( X2 @ X4 ) )
                 => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) )
     => ~ pushprop_lthm ),
    introduced(assumption,[]) ).

thf(h124,assumption,
    ( apinj2
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ X1 @ X3 )
            = ( ap @ X2 @ X4 ) )
         => ( X3 = X4 ) ) ) ),
    introduced(assumption,[]) ).

thf(h125,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                 => ulamvar1 )
                                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                                      ( X1
                                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                                        ( X2
                                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                                   => ( sP17
                                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                     => ~ apnotvar )
                                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                         => ( hoasinduction_lthm
                                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                              ( ( var @ X3 )
                                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                       != ( sP10
                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                          ( ! [X4: term] :
                                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                           => ( ! [X1: term] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                                 => ( hoaslaminj
                                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                         => ~ induction2lem_gthm )
                                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                                 => ( hoasinduction_lem3
                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                             => ( hoasinduction_lem2
                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                     => ~ hoasinduction_lem1 )
                                                                                                 => ~ hoaslamnotap_lthm )
                                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                         => ~ hoasapnotvar )
                                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                                 => ( hoasinduction
                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                             => ~ hoasinduction_gthm )
                                                                         => ~ axapp )
                                                                     => ~ hoaslamnotvar_lthm )
                                                                 => ~ pushprop_lem3v2_lthm )
                                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                         => ~ ulamvarind )
                                                     => ( induction
                                                       != ( ! [X1: term > $o,X2: term] :
                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                          ( ( var @ X3 )
                                                                         => ( X1 @ X3 ) )
                                                                     => ~ ! [X3: term,X4: term] :
                                                                            ( ~ ( ( X1 @ X3 )
                                                                               => ~ ( X1 @ X4 ) )
                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( X1 @ X3 )
                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                             => ( X1 @ X2 ) ) ) ) )
                                                 => ( hoasinduction_lem3a_lthm
                                                   != ( ! [X1: term] :
                                                          ( X1
                                                          = ( sub @ X1 @ id ) )
                                                     => ( sP40
                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                            ( ~ ( ! [X3: subst > term > term] :
                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X1 @ id @ X4 @ id )
                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                               => ~ ! [X3: term] :
                                                                      ( ( X1 @ id @ X3 @ id )
                                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                             => ~ termmset_gthm )
                                         => ( hoasinduction_lem3aa != sP40 ) )
                                     => ~ pushprop_lem1v2_gthm )
                                 => ~ hoaslamnotap_gthm )
                             => ~ hoaslamnotvar_gthm )
                         => ~ hoasinduction_lem3b_gthm )
                     => ~ pushprop_lem2v2 )
                 => ~ hoasinduction_lem3a_gthm )
             => ~ axclos )
         => ~ axassoc )
     => ( hoasinduction_lem2v2
       != ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
              ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                      ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                     => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                                 => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                        ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                       => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                             => ~ ! [X5: term,X6: term] :
                                    ( ~ ( ( X1 @ id @ X5 @ id )
                                       => ~ ( X1 @ id @ X6 @ id ) )
                                   => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                         => ~ ! [X5: term] :
                                ( ( X2 @ X5 )
                                = ( X1 @ id @ X5 @ id ) ) )
                     => ~ ( X2 @ X3 ) )
                 => ~ ( X2 @ X4 ) )
             => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h126,assumption,
    pushprop_lthm,
    introduced(assumption,[]) ).

thf(h127,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                             => ulamvar1 )
                                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                                  ( X1
                                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                                    ( X2
                                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                               => ( sP17
                                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                                 => ~ apnotvar )
                                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                     => ( hoasinduction_lthm
                                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                          ( ( var @ X3 )
                                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ! [X4: term] :
                                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                                   != ( sP10
                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                      ( ! [X4: term] :
                                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                       => ( ! [X1: term] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                             => ( hoaslaminj
                                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                     => ~ induction2lem_gthm )
                                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                             => ( hoasinduction_lem3
                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                         => ( hoasinduction_lem2
                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                                 => ~ hoasinduction_lem1 )
                                                                                             => ~ hoaslamnotap_lthm )
                                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                     => ~ hoasapnotvar )
                                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                                             => ( hoasinduction
                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                         => ~ hoasinduction_gthm )
                                                                     => ~ axapp )
                                                                 => ~ hoaslamnotvar_lthm )
                                                             => ~ pushprop_lem3v2_lthm )
                                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                     => ~ ulamvarind )
                                                 => ( induction
                                                   != ( ! [X1: term > $o,X2: term] :
                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                      ( ( var @ X3 )
                                                                     => ( X1 @ X3 ) )
                                                                 => ~ ! [X3: term,X4: term] :
                                                                        ( ~ ( ( X1 @ X3 )
                                                                           => ~ ( X1 @ X4 ) )
                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( X1 @ X3 )
                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                         => ( X1 @ X2 ) ) ) ) )
                                             => ( hoasinduction_lem3a_lthm
                                               != ( ! [X1: term] :
                                                      ( X1
                                                      = ( sub @ X1 @ id ) )
                                                 => ( sP40
                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                        ( ~ ( ! [X3: subst > term > term] :
                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X1 @ id @ X4 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                           => ~ ! [X3: term] :
                                                                  ( ( X1 @ id @ X3 @ id )
                                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                         => ~ termmset_gthm )
                                     => ( hoasinduction_lem3aa != sP40 ) )
                                 => ~ pushprop_lem1v2_gthm )
                             => ~ hoaslamnotap_gthm )
                         => ~ hoaslamnotvar_gthm )
                     => ~ hoasinduction_lem3b_gthm )
                 => ~ pushprop_lem2v2 )
             => ~ hoasinduction_lem3a_gthm )
         => ~ axclos )
     => ~ axassoc ),
    introduced(assumption,[]) ).

thf(h128,assumption,
    ( hoasinduction_lem2v2
    = ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
          ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                  ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                                 => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                             => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                    ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                   => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                         => ~ ! [X5: term,X6: term] :
                                ( ~ ( ( X1 @ id @ X5 @ id )
                                   => ~ ( X1 @ id @ X6 @ id ) )
                               => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                     => ~ ! [X5: term] :
                            ( ( X2 @ X5 )
                            = ( X1 @ id @ X5 @ id ) ) )
                 => ~ ( X2 @ X3 ) )
             => ~ ( X2 @ X4 ) )
         => ( X2 @ ( ap @ X3 @ X4 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h129,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                                             => ( shinj
                                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                                             => ( hoasapinj1
                                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                         => ulamvar1 )
                                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                                              ( X1
                                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                                ( X2
                                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                           => ( sP17
                                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                             => ~ apnotvar )
                                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                                 => ( hoasinduction_lthm
                                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                      ( ( var @ X3 )
                                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ! [X4: term] :
                                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                                               != ( sP10
                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                  ( ! [X4: term] :
                                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                   => ( ! [X1: term] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                         => ( hoaslaminj
                                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                                 => ~ induction2lem_gthm )
                                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                         => ( hoasinduction_lem3
                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                     => ( hoasinduction_lem2
                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                             => ~ hoasinduction_lem1 )
                                                                                         => ~ hoaslamnotap_lthm )
                                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                                 => ~ hoasapnotvar )
                                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                                         => ( hoasinduction
                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                     => ~ hoasinduction_gthm )
                                                                 => ~ axapp )
                                                             => ~ hoaslamnotvar_lthm )
                                                         => ~ pushprop_lem3v2_lthm )
                                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                                 => ~ ulamvarind )
                                             => ( induction
                                               != ( ! [X1: term > $o,X2: term] :
                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                  ( ( var @ X3 )
                                                                 => ( X1 @ X3 ) )
                                                             => ~ ! [X3: term,X4: term] :
                                                                    ( ~ ( ( X1 @ X3 )
                                                                       => ~ ( X1 @ X4 ) )
                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( X1 @ X3 )
                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                     => ( X1 @ X2 ) ) ) ) )
                                         => ( hoasinduction_lem3a_lthm
                                           != ( ! [X1: term] :
                                                  ( X1
                                                  = ( sub @ X1 @ id ) )
                                             => ( sP40
                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                    ( ~ ( ! [X3: subst > term > term] :
                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X1 @ id @ X4 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                       => ~ ! [X3: term] :
                                                              ( ( X1 @ id @ X3 @ id )
                                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                     => ~ termmset_gthm )
                                 => ( hoasinduction_lem3aa != sP40 ) )
                             => ~ pushprop_lem1v2_gthm )
                         => ~ hoaslamnotap_gthm )
                     => ~ hoaslamnotvar_gthm )
                 => ~ hoasinduction_lem3b_gthm )
             => ~ pushprop_lem2v2 )
         => ~ hoasinduction_lem3a_gthm )
     => ~ axclos ),
    introduced(assumption,[]) ).

thf(h130,assumption,
    axassoc,
    introduced(assumption,[]) ).

thf(h131,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                                         => ( shinj
                                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                             => ( induction2lem
                                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                                         => ( hoasapinj1
                                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                     => ulamvar1 )
                                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                                          ( X1
                                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                                            ( X2
                                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                       => ( sP17
                                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                         => ~ apnotvar )
                                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                             => ( hoasinduction_lthm
                                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                  ( ( var @ X3 )
                                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ! [X4: term] :
                                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                                           != ( sP10
                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                ( ( var @ X3 )
                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                              ( ! [X4: term] :
                                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                               => ( ! [X1: term] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                     => ( hoaslaminj
                                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                             => ~ induction2lem_gthm )
                                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                     => ( hoasinduction_lem3
                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                                 => ( hoasinduction_lem2
                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                         => ~ hoasinduction_lem1 )
                                                                                     => ~ hoaslamnotap_lthm )
                                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                             => ~ hoasapnotvar )
                                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                                     => ( hoasinduction
                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                 => ~ hoasinduction_gthm )
                                                             => ~ axapp )
                                                         => ~ hoaslamnotvar_lthm )
                                                     => ~ pushprop_lem3v2_lthm )
                                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                                             => ~ ulamvarind )
                                         => ( induction
                                           != ( ! [X1: term > $o,X2: term] :
                                                  ( ~ ( ~ ( ! [X3: term] :
                                                              ( ( var @ X3 )
                                                             => ( X1 @ X3 ) )
                                                         => ~ ! [X3: term,X4: term] :
                                                                ( ~ ( ( X1 @ X3 )
                                                                   => ~ ( X1 @ X4 ) )
                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( X1 @ X3 )
                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                 => ( X1 @ X2 ) ) ) ) )
                                     => ( hoasinduction_lem3a_lthm
                                       != ( ! [X1: term] :
                                              ( X1
                                              = ( sub @ X1 @ id ) )
                                         => ( sP40
                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                ( ~ ( ! [X3: subst > term > term] :
                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X1 @ id @ X4 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                   => ~ ! [X3: term] :
                                                          ( ( X1 @ id @ X3 @ id )
                                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                                 => ~ termmset_gthm )
                             => ( hoasinduction_lem3aa != sP40 ) )
                         => ~ pushprop_lem1v2_gthm )
                     => ~ hoaslamnotap_gthm )
                 => ~ hoaslamnotvar_gthm )
             => ~ hoasinduction_lem3b_gthm )
         => ~ pushprop_lem2v2 )
     => ~ hoasinduction_lem3a_gthm ),
    introduced(assumption,[]) ).

thf(h132,assumption,
    axclos,
    introduced(assumption,[]) ).

thf(h133,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                                     => ( shinj
                                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                         => ( induction2lem
                                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                                 => ~ axvarshift )
                                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                                     => ( hoasapinj1
                                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                 => ulamvar1 )
                                                                                                                                             => ( induction2lem_lthm
                                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                                      ( X1
                                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                                        ( X2
                                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                                   => ( sP17
                                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                     => ~ apnotvar )
                                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                         => ( hoasinduction_lthm
                                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                              ( ( var @ X3 )
                                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ! [X4: term] :
                                                                                                                                                ( ( X1 @ X4 )
                                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                 => ( X1 @ X2 ) )
                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                                       != ( sP10
                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                            ( ( var @ X3 )
                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                          ( ! [X4: term] :
                                                                                                                                              ( ( X1 @ X4 )
                                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                           => ( ! [X1: term] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                                 => ( hoaslaminj
                                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                             => ( hoasinduction_lem3aaa
                                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                         => ~ induction2lem_gthm )
                                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                                 => ( hoasinduction_lem3
                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                             => ( hoasinduction_lem2
                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                     => ~ hoasinduction_lem1 )
                                                                                 => ~ hoaslamnotap_lthm )
                                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                         => ~ hoasapnotvar )
                                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                                 => ( hoasinduction
                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                             => ~ ! [X3: subst > term > term] :
                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                             => ~ hoasinduction_gthm )
                                                         => ~ axapp )
                                                     => ~ hoaslamnotvar_lthm )
                                                 => ~ pushprop_lem3v2_lthm )
                                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                                         => ~ ulamvarind )
                                     => ( induction
                                       != ( ! [X1: term > $o,X2: term] :
                                              ( ~ ( ~ ( ! [X3: term] :
                                                          ( ( var @ X3 )
                                                         => ( X1 @ X3 ) )
                                                     => ~ ! [X3: term,X4: term] :
                                                            ( ~ ( ( X1 @ X3 )
                                                               => ~ ( X1 @ X4 ) )
                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( X1 @ X3 )
                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                             => ( X1 @ X2 ) ) ) ) )
                                 => ( hoasinduction_lem3a_lthm
                                   != ( ! [X1: term] :
                                          ( X1
                                          = ( sub @ X1 @ id ) )
                                     => ( sP40
                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                            ( ~ ( ! [X3: subst > term > term] :
                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X1 @ id @ X4 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                               => ~ ! [X3: term] :
                                                      ( ( X1 @ id @ X3 @ id )
                                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                             => ~ termmset_gthm )
                         => ( hoasinduction_lem3aa != sP40 ) )
                     => ~ pushprop_lem1v2_gthm )
                 => ~ hoaslamnotap_gthm )
             => ~ hoaslamnotvar_gthm )
         => ~ hoasinduction_lem3b_gthm )
     => ~ pushprop_lem2v2 ),
    introduced(assumption,[]) ).

thf(h134,assumption,
    hoasinduction_lem3a_gthm,
    introduced(assumption,[]) ).

thf(h135,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                                 => ( shinj
                                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                     => ( induction2lem
                                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                             => ~ axvarshift )
                                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                                 => ( hoasapinj1
                                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                             => ulamvar1 )
                                                                                                                                         => ( induction2lem_lthm
                                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                                  ( X1
                                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                                    ( X2
                                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                               => ( sP17
                                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                                 => ~ apnotvar )
                                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                     => ( hoasinduction_lthm
                                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                          ( ( var @ X3 )
                                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ! [X4: term] :
                                                                                                                                            ( ( X1 @ X4 )
                                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                             => ( X1 @ X2 ) )
                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                                   != ( sP10
                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                        ( ( var @ X3 )
                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                      ( ! [X4: term] :
                                                                                                                                          ( ( X1 @ X4 )
                                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                       => ( ! [X1: term] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X2 @ X4 )
                                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                             => ( hoaslaminj
                                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                         => ( hoasinduction_lem3aaa
                                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                     => ~ induction2lem_gthm )
                                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                             => ( hoasinduction_lem3
                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                         => ( hoasinduction_lem2
                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                                 => ~ hoasinduction_lem1 )
                                                                             => ~ hoaslamnotap_lthm )
                                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                     => ~ hoasapnotvar )
                                                                 => ( hoasinduction_lem0 != sP10 ) )
                                                             => ( hoasinduction
                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                             => ~ ! [X3: term,X4: term] :
                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                         => ~ ! [X3: subst > term > term] :
                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                         => ~ hoasinduction_gthm )
                                                     => ~ axapp )
                                                 => ~ hoaslamnotvar_lthm )
                                             => ~ pushprop_lem3v2_lthm )
                                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                                     => ~ ulamvarind )
                                 => ( induction
                                   != ( ! [X1: term > $o,X2: term] :
                                          ( ~ ( ~ ( ! [X3: term] :
                                                      ( ( var @ X3 )
                                                     => ( X1 @ X3 ) )
                                                 => ~ ! [X3: term,X4: term] :
                                                        ( ~ ( ( X1 @ X3 )
                                                           => ~ ( X1 @ X4 ) )
                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ( X1 @ X3 )
                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                         => ( X1 @ X2 ) ) ) ) )
                             => ( hoasinduction_lem3a_lthm
                               != ( ! [X1: term] :
                                      ( X1
                                      = ( sub @ X1 @ id ) )
                                 => ( sP40
                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                        ( ~ ( ! [X3: subst > term > term] :
                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X1 @ id @ X4 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                           => ~ ! [X3: term] :
                                                  ( ( X1 @ id @ X3 @ id )
                                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                         => ~ termmset_gthm )
                     => ( hoasinduction_lem3aa != sP40 ) )
                 => ~ pushprop_lem1v2_gthm )
             => ~ hoaslamnotap_gthm )
         => ~ hoaslamnotvar_gthm )
     => ~ hoasinduction_lem3b_gthm ),
    introduced(assumption,[]) ).

thf(h136,assumption,
    pushprop_lem2v2,
    introduced(assumption,[]) ).

thf(h137,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                                             => ( shinj
                                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                                 => ( induction2lem
                                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                         => ~ axvarshift )
                                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                                             => ( hoasapinj1
                                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                         => ulamvar1 )
                                                                                                                                     => ( induction2lem_lthm
                                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                                              ( X1
                                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                                ( X2
                                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                           => ( sP17
                                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                                ( ( var @ X3 )
                                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ( var @ X4 )
                                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                                             => ~ apnotvar )
                                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                                 => ( hoasinduction_lthm
                                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                      ( ( var @ X3 )
                                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ! [X4: term] :
                                                                                                                                        ( ( X1 @ X4 )
                                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                         => ( X1 @ X2 ) )
                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                                               != ( sP10
                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                    ( ( var @ X3 )
                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                  ( ! [X4: term] :
                                                                                                                                      ( ( X1 @ X4 )
                                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                   => ( ! [X1: term] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X2 @ X4 )
                                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                         => ( hoaslaminj
                                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                     => ( hoasinduction_lem3aaa
                                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                                 => ~ induction2lem_gthm )
                                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                         => ( hoasinduction_lem3
                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                     => ( hoasinduction_lem2
                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                             => ~ hoasinduction_lem1 )
                                                                         => ~ hoaslamnotap_lthm )
                                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                                 => ~ hoasapnotvar )
                                                             => ( hoasinduction_lem0 != sP10 ) )
                                                         => ( hoasinduction
                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                         => ~ ! [X3: term,X4: term] :
                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                     => ~ ! [X3: subst > term > term] :
                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                     => ~ hoasinduction_gthm )
                                                 => ~ axapp )
                                             => ~ hoaslamnotvar_lthm )
                                         => ~ pushprop_lem3v2_lthm )
                                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                                 => ~ ulamvarind )
                             => ( induction
                               != ( ! [X1: term > $o,X2: term] :
                                      ( ~ ( ~ ( ! [X3: term] :
                                                  ( ( var @ X3 )
                                                 => ( X1 @ X3 ) )
                                             => ~ ! [X3: term,X4: term] :
                                                    ( ~ ( ( X1 @ X3 )
                                                       => ~ ( X1 @ X4 ) )
                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                         => ~ ! [X3: term] :
                                                ( ( X1 @ X3 )
                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                     => ( X1 @ X2 ) ) ) ) )
                         => ( hoasinduction_lem3a_lthm
                           != ( ! [X1: term] :
                                  ( X1
                                  = ( sub @ X1 @ id ) )
                             => ( sP40
                               => ! [X1: subst > term > subst > $o,X2: term] :
                                    ( ~ ( ! [X3: subst > term > term] :
                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X1 @ id @ X4 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                       => ~ ! [X3: term] :
                                              ( ( X1 @ id @ X3 @ id )
                                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                     => ~ termmset_gthm )
                 => ( hoasinduction_lem3aa != sP40 ) )
             => ~ pushprop_lem1v2_gthm )
         => ~ hoaslamnotap_gthm )
     => ~ hoaslamnotvar_gthm ),
    introduced(assumption,[]) ).

thf(h138,assumption,
    hoasinduction_lem3b_gthm,
    introduced(assumption,[]) ).

thf(h139,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                                 => ~ axmap )
                                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                                         => ( shinj
                                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                             => ( induction2lem
                                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                     => ~ axvarshift )
                                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                                         => ( hoasapinj1
                                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                     => ulamvar1 )
                                                                                                                                 => ( induction2lem_lthm
                                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                                          ( X1
                                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                                            ( X2
                                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                       => ( sP17
                                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                            ( ( var @ X3 )
                                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ( var @ X4 )
                                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                                         => ~ apnotvar )
                                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                             => ( hoasinduction_lthm
                                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                  ( ( var @ X3 )
                                                                                                                                 => ( X1 @ X3 ) )
                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ! [X4: term] :
                                                                                                                                    ( ( X1 @ X4 )
                                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                     => ( X1 @ X2 ) )
                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                     => ~ ! [X3: term] :
                                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                                           != ( sP10
                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                ( ( var @ X3 )
                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                       => ~ ! [X3: term] :
                                                                                                                              ( ! [X4: term] :
                                                                                                                                  ( ( X1 @ X4 )
                                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                   => ( X1 @ X2 ) )
                                                                                                               => ( ! [X1: term] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                       => ~ ! [X5: term] :
                                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X2 @ X4 )
                                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                     => ( hoaslaminj
                                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                                 => ( hoasinduction_lem3aaa
                                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                             => ~ induction2lem_gthm )
                                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                     => ( hoasinduction_lem3
                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                                 => ( hoasinduction_lem2
                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                         => ~ hoasinduction_lem1 )
                                                                     => ~ hoaslamnotap_lthm )
                                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                                             => ~ hoasapnotvar )
                                                         => ( hoasinduction_lem0 != sP10 ) )
                                                     => ( hoasinduction
                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                     => ~ ! [X3: term,X4: term] :
                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                 => ~ ! [X3: subst > term > term] :
                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                 => ~ hoasinduction_gthm )
                                             => ~ axapp )
                                         => ~ hoaslamnotvar_lthm )
                                     => ~ pushprop_lem3v2_lthm )
                                 => ( hoasinduction_lem3b_lthm != sP9 ) )
                             => ~ ulamvarind )
                         => ( induction
                           != ( ! [X1: term > $o,X2: term] :
                                  ( ~ ( ~ ( ! [X3: term] :
                                              ( ( var @ X3 )
                                             => ( X1 @ X3 ) )
                                         => ~ ! [X3: term,X4: term] :
                                                ( ~ ( ( X1 @ X3 )
                                                   => ~ ( X1 @ X4 ) )
                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                     => ~ ! [X3: term] :
                                            ( ( X1 @ X3 )
                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                 => ( X1 @ X2 ) ) ) ) )
                     => ( hoasinduction_lem3a_lthm
                       != ( ! [X1: term] :
                              ( X1
                              = ( sub @ X1 @ id ) )
                         => ( sP40
                           => ! [X1: subst > term > subst > $o,X2: term] :
                                ( ~ ( ! [X3: subst > term > term] :
                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X1 @ id @ X4 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                   => ~ ! [X3: term] :
                                          ( ( X1 @ id @ X3 @ id )
                                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
                 => ~ termmset_gthm )
             => ( hoasinduction_lem3aa != sP40 ) )
         => ~ pushprop_lem1v2_gthm )
     => ~ hoaslamnotap_gthm ),
    introduced(assumption,[]) ).

thf(h140,assumption,
    hoaslamnotvar_gthm,
    introduced(assumption,[]) ).

thf(h141,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                                             => ~ axmap )
                                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                                     => ( shinj
                                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                         => ( induction2lem
                                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                                 => ~ axvarshift )
                                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                                     => ( hoasapinj1
                                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                 => ulamvar1 )
                                                                                                                             => ( induction2lem_lthm
                                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                                      ( X1
                                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                                        ( X2
                                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                                   => ( sP17
                                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                        ( ( var @ X3 )
                                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                                          ( ! [X5: term] :
                                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ( var @ X4 )
                                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                                     => ~ apnotvar )
                                                                                                                 => ~ pushprop_lthm_orig )
                                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                         => ( hoasinduction_lthm
                                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                                              ( ( var @ X3 )
                                                                                                                             => ( X1 @ X3 ) )
                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ! [X4: term] :
                                                                                                                                ( ( X1 @ X4 )
                                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                 => ( X1 @ X2 ) )
                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                                 => ~ ! [X3: term] :
                                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                                       != ( sP10
                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                            ( ( var @ X3 )
                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                   => ~ ! [X3: term] :
                                                                                                                          ( ! [X4: term] :
                                                                                                                              ( ( X1 @ X4 )
                                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                               => ( X1 @ X2 ) )
                                                                                                           => ( ! [X1: term] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ X1 @ id ) )
                                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                                   => ~ ! [X5: term] :
                                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X2 @ X4 )
                                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X2 @ X4 )
                                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                                 => ( hoaslaminj
                                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                             => ( hoasinduction_lem3aaa
                                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                         => ~ induction2lem_gthm )
                                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                                 => ( hoasinduction_lem3
                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                             => ( hoasinduction_lem2
                                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                     => ~ hoasinduction_lem1 )
                                                                 => ~ hoaslamnotap_lthm )
                                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                                         => ~ hoasapnotvar )
                                                     => ( hoasinduction_lem0 != sP10 ) )
                                                 => ( hoasinduction
                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                 => ~ ! [X3: term,X4: term] :
                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                             => ~ ! [X3: subst > term > term] :
                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X1 @ id @ X4 @ id )
                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                                             => ~ hoasinduction_gthm )
                                         => ~ axapp )
                                     => ~ hoaslamnotvar_lthm )
                                 => ~ pushprop_lem3v2_lthm )
                             => ( hoasinduction_lem3b_lthm != sP9 ) )
                         => ~ ulamvarind )
                     => ( induction
                       != ( ! [X1: term > $o,X2: term] :
                              ( ~ ( ~ ( ! [X3: term] :
                                          ( ( var @ X3 )
                                         => ( X1 @ X3 ) )
                                     => ~ ! [X3: term,X4: term] :
                                            ( ~ ( ( X1 @ X3 )
                                               => ~ ( X1 @ X4 ) )
                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                 => ~ ! [X3: term] :
                                        ( ( X1 @ X3 )
                                       => ( X1 @ ( lam @ X3 ) ) ) )
                             => ( X1 @ X2 ) ) ) ) )
                 => ( hoasinduction_lem3a_lthm
                   != ( ! [X1: term] :
                          ( X1
                          = ( sub @ X1 @ id ) )
                     => ( sP40
                       => ! [X1: subst > term > subst > $o,X2: term] :
                            ( ~ ( ! [X3: subst > term > term] :
                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X1 @ id @ X4 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                               => ~ ! [X3: term] :
                                      ( ( X1 @ id @ X3 @ id )
                                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
             => ~ termmset_gthm )
         => ( hoasinduction_lem3aa != sP40 ) )
     => ~ pushprop_lem1v2_gthm ),
    introduced(assumption,[]) ).

thf(h142,assumption,
    hoaslamnotap_gthm,
    introduced(assumption,[]) ).

thf(h143,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                                         => ~ axmap )
                                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                                 => ( shinj
                                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                     => ( induction2lem
                                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                             => ~ axvarshift )
                                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                                 => ( hoasapinj1
                                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                             => ulamvar1 )
                                                                                                                         => ( induction2lem_lthm
                                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                                  ( X1
                                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                                    ( X2
                                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                               => ( sP17
                                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                    ( ( var @ X3 )
                                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                                      ( ! [X5: term] :
                                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ( var @ X4 )
                                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                                 => ~ apnotvar )
                                                                                                             => ~ pushprop_lthm_orig )
                                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                     => ( hoasinduction_lthm
                                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                                          ( ( var @ X3 )
                                                                                                                         => ( X1 @ X3 ) )
                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ! [X4: term] :
                                                                                                                            ( ( X1 @ X4 )
                                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                             => ( X1 @ X2 ) )
                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                             => ~ ! [X3: term] :
                                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                                   != ( sP10
                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                        ( ( var @ X3 )
                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                               => ~ ! [X3: term] :
                                                                                                                      ( ! [X4: term] :
                                                                                                                          ( ( X1 @ X4 )
                                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                           => ( X1 @ X2 ) )
                                                                                                       => ( ! [X1: term] :
                                                                                                              ( X1
                                                                                                              = ( sub @ X1 @ id ) )
                                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                               => ~ ! [X5: term] :
                                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X2 @ X4 )
                                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X2 @ X4 )
                                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                             => ( hoaslaminj
                                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                         => ( hoasinduction_lem3aaa
                                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                     => ~ induction2lem_gthm )
                                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                             => ( hoasinduction_lem3
                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                         => ( hoasinduction_lem2
                                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                             => ~ ! [X4: term,X5: term] :
                                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                                 => ~ hoasinduction_lem1 )
                                                             => ~ hoaslamnotap_lthm )
                                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                                     => ~ hoasapnotvar )
                                                 => ( hoasinduction_lem0 != sP10 ) )
                                             => ( hoasinduction
                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                             => ~ ! [X3: term,X4: term] :
                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                         => ~ ! [X3: subst > term > term] :
                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X1 @ id @ X4 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                         => ~ hoasinduction_gthm )
                                     => ~ axapp )
                                 => ~ hoaslamnotvar_lthm )
                             => ~ pushprop_lem3v2_lthm )
                         => ( hoasinduction_lem3b_lthm != sP9 ) )
                     => ~ ulamvarind )
                 => ( induction
                   != ( ! [X1: term > $o,X2: term] :
                          ( ~ ( ~ ( ! [X3: term] :
                                      ( ( var @ X3 )
                                     => ( X1 @ X3 ) )
                                 => ~ ! [X3: term,X4: term] :
                                        ( ~ ( ( X1 @ X3 )
                                           => ~ ( X1 @ X4 ) )
                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                             => ~ ! [X3: term] :
                                    ( ( X1 @ X3 )
                                   => ( X1 @ ( lam @ X3 ) ) ) )
                         => ( X1 @ X2 ) ) ) ) )
             => ( hoasinduction_lem3a_lthm
               != ( ! [X1: term] :
                      ( X1
                      = ( sub @ X1 @ id ) )
                 => ( sP40
                   => ! [X1: subst > term > subst > $o,X2: term] :
                        ( ~ ( ! [X3: subst > term > term] :
                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X1 @ id @ X4 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                           => ~ ! [X3: term] :
                                  ( ( X1 @ id @ X3 @ id )
                                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
         => ~ termmset_gthm )
     => ( hoasinduction_lem3aa != sP40 ) ),
    introduced(assumption,[]) ).

thf(h144,assumption,
    pushprop_lem1v2_gthm,
    introduced(assumption,[]) ).

thf(h145,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                             => ( sh
                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                                     => ~ axmap )
                                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                                             => ( shinj
                                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                                 => ( induction2lem
                                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                         => ~ axvarshift )
                                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                                             => ( hoasapinj1
                                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                         => ulamvar1 )
                                                                                                                     => ( induction2lem_lthm
                                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                                              ( X1
                                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                                ( X2
                                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                           => ( sP17
                                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                                ( ( var @ X3 )
                                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                       => ~ ! [X3: term] :
                                                                                                                                              ( ( X1 @ X3 )
                                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                                   => ( X1 @ X2 ) )
                                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                                  ( ! [X5: term] :
                                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ( var @ X4 )
                                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                                             => ~ apnotvar )
                                                                                                         => ~ pushprop_lthm_orig )
                                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                                 => ( hoasinduction_lthm
                                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                                      ( ( var @ X3 )
                                                                                                                     => ( X1 @ X3 ) )
                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ! [X4: term] :
                                                                                                                        ( ( X1 @ X4 )
                                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                         => ( X1 @ X2 ) )
                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                         => ~ ! [X3: term] :
                                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                                               != ( sP10
                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                    ( ( var @ X3 )
                                                                                                                   => ( X1 @ X3 ) )
                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                           => ~ ! [X3: term] :
                                                                                                                  ( ! [X4: term] :
                                                                                                                      ( ( X1 @ X4 )
                                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                       => ( X1 @ X2 ) )
                                                                                                   => ( ! [X1: term] :
                                                                                                          ( X1
                                                                                                          = ( sub @ X1 @ id ) )
                                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                           => ~ ! [X5: term] :
                                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X2 @ X4 )
                                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X2 @ X4 )
                                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                         => ( hoaslaminj
                                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                     => ( hoasinduction_lem3aaa
                                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                                 => ~ induction2lem_gthm )
                                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                         => ( hoasinduction_lem3
                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                     => ( hoasinduction_lem2
                                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                         => ~ ! [X4: term,X5: term] :
                                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                                             => ~ hoasinduction_lem1 )
                                                         => ~ hoaslamnotap_lthm )
                                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                                 => ~ hoasapnotvar )
                                             => ( hoasinduction_lem0 != sP10 ) )
                                         => ( hoasinduction
                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                         => ~ ! [X3: term,X4: term] :
                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                     => ~ ! [X3: subst > term > term] :
                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X1 @ id @ X4 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                                     => ~ hoasinduction_gthm )
                                 => ~ axapp )
                             => ~ hoaslamnotvar_lthm )
                         => ~ pushprop_lem3v2_lthm )
                     => ( hoasinduction_lem3b_lthm != sP9 ) )
                 => ~ ulamvarind )
             => ( induction
               != ( ! [X1: term > $o,X2: term] :
                      ( ~ ( ~ ( ! [X3: term] :
                                  ( ( var @ X3 )
                                 => ( X1 @ X3 ) )
                             => ~ ! [X3: term,X4: term] :
                                    ( ~ ( ( X1 @ X3 )
                                       => ~ ( X1 @ X4 ) )
                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( X1 @ X3 )
                               => ( X1 @ ( lam @ X3 ) ) ) )
                     => ( X1 @ X2 ) ) ) ) )
         => ( hoasinduction_lem3a_lthm
           != ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) )
             => ( sP40
               => ! [X1: subst > term > subst > $o,X2: term] :
                    ( ~ ( ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                       => ~ ! [X3: term] :
                              ( ( X1 @ id @ X3 @ id )
                             => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) )
     => ~ termmset_gthm ),
    introduced(assumption,[]) ).

thf(h146,assumption,
    hoasinduction_lem3aa = sP40,
    introduced(assumption,[]) ).

thf(h147,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                             => ( id
                                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                         => ( sh
                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                                 => ~ axmap )
                                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                                         => ( shinj
                                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                             => ( induction2lem
                                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                ( ( var @ X4 )
                                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                     => ~ axvarshift )
                                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                                         => ( hoasapinj1
                                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                     => ulamvar1 )
                                                                                                                 => ( induction2lem_lthm
                                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                                          ( X1
                                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                                            ( X2
                                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                       => ( sP17
                                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                            ( ( var @ X3 )
                                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                                   => ~ ! [X3: term] :
                                                                                                                                          ( ( X1 @ X3 )
                                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                               => ( X1 @ X2 ) )
                                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                       => ~ ! [X4: term] :
                                                                                                                                              ( ! [X5: term] :
                                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ( var @ X4 )
                                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                                         => ~ apnotvar )
                                                                                                     => ~ pushprop_lthm_orig )
                                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                             => ( hoasinduction_lthm
                                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                                  ( ( var @ X3 )
                                                                                                                 => ( X1 @ X3 ) )
                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ! [X4: term] :
                                                                                                                    ( ( X1 @ X4 )
                                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                     => ( X1 @ X2 ) )
                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                     => ~ ! [X3: term] :
                                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                                           != ( sP10
                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                ( ( var @ X3 )
                                                                                                               => ( X1 @ X3 ) )
                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                       => ~ ! [X3: term] :
                                                                                                              ( ! [X4: term] :
                                                                                                                  ( ( X1 @ X4 )
                                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                   => ( X1 @ X2 ) )
                                                                                               => ( ! [X1: term] :
                                                                                                      ( X1
                                                                                                      = ( sub @ X1 @ id ) )
                                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                       => ~ ! [X5: term] :
                                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X2 @ X4 )
                                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X2 @ X4 )
                                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                     => ~ ! [X4: term] :
                                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                     => ( hoaslaminj
                                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                                 => ( hoasinduction_lem3aaa
                                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                             => ~ induction2lem_gthm )
                                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                     => ( hoasinduction_lem3
                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                                 => ( hoasinduction_lem2
                                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                     => ~ ! [X4: term,X5: term] :
                                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                                         => ~ hoasinduction_lem1 )
                                                     => ~ hoaslamnotap_lthm )
                                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                                             => ~ hoasapnotvar )
                                         => ( hoasinduction_lem0 != sP10 ) )
                                     => ( hoasinduction
                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                     => ~ ! [X3: term,X4: term] :
                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                 => ~ ! [X3: subst > term > term] :
                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X1 @ id @ X4 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                                 => ~ hoasinduction_gthm )
                             => ~ axapp )
                         => ~ hoaslamnotvar_lthm )
                     => ~ pushprop_lem3v2_lthm )
                 => ( hoasinduction_lem3b_lthm != sP9 ) )
             => ~ ulamvarind )
         => ( induction
           != ( ! [X1: term > $o,X2: term] :
                  ( ~ ( ~ ( ! [X3: term] :
                              ( ( var @ X3 )
                             => ( X1 @ X3 ) )
                         => ~ ! [X3: term,X4: term] :
                                ( ~ ( ( X1 @ X3 )
                                   => ~ ( X1 @ X4 ) )
                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                     => ~ ! [X3: term] :
                            ( ( X1 @ X3 )
                           => ( X1 @ ( lam @ X3 ) ) ) )
                 => ( X1 @ X2 ) ) ) ) )
     => ( hoasinduction_lem3a_lthm
       != ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( sP40
           => ! [X1: subst > term > subst > $o,X2: term] :
                ( ~ ( ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                   => ~ ! [X3: term] :
                          ( ( X1 @ id @ X3 @ id )
                         => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
               => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h148,assumption,
    termmset_gthm,
    introduced(assumption,[]) ).

thf(h149,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                         => ( id
                                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                     => ( sh
                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                             => ~ sP36 )
                                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                                             => ~ axmap )
                                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                                     => ( shinj
                                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                         => ( induction2lem
                                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                            ( ( var @ X4 )
                                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                                 => ~ axvarshift )
                                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                                     => ( hoasapinj1
                                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                 => ulamvar1 )
                                                                                                             => ( induction2lem_lthm
                                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                                      ( X1
                                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                                        ( X2
                                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                                   => ( sP17
                                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                        ( ( var @ X3 )
                                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                               => ~ ! [X3: term] :
                                                                                                                                      ( ( X1 @ X3 )
                                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                           => ( X1 @ X2 ) )
                                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                   => ~ ! [X4: term] :
                                                                                                                                          ( ! [X5: term] :
                                                                                                                                              ( ( X1 @ X5 )
                                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ( var @ X4 )
                                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                                     => ~ apnotvar )
                                                                                                 => ~ pushprop_lthm_orig )
                                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                         => ( hoasinduction_lthm
                                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                                              ( ( var @ X3 )
                                                                                                             => ( X1 @ X3 ) )
                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ! [X4: term] :
                                                                                                                ( ( X1 @ X4 )
                                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                 => ( X1 @ X2 ) )
                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                                 => ~ ! [X3: term] :
                                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                                       != ( sP10
                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                            ( ( var @ X3 )
                                                                                                           => ( X1 @ X3 ) )
                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                   => ~ ! [X3: term] :
                                                                                                          ( ! [X4: term] :
                                                                                                              ( ( X1 @ X4 )
                                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                               => ( X1 @ X2 ) )
                                                                                           => ( ! [X1: term] :
                                                                                                  ( X1
                                                                                                  = ( sub @ X1 @ id ) )
                                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                                   => ~ ! [X5: term] :
                                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X2 @ X4 )
                                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X2 @ X4 )
                                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                 => ~ ! [X4: term] :
                                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                                 => ( hoaslaminj
                                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                         => ( ( X1 @ X3 @ X4 )
                                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                             => ( hoasinduction_lem3aaa
                                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                         => ~ induction2lem_gthm )
                                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                                 => ( hoasinduction_lem3
                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                             => ( hoasinduction_lem2
                                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                 => ~ ! [X4: term,X5: term] :
                                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                                     => ~ hoasinduction_lem1 )
                                                 => ~ hoaslamnotap_lthm )
                                             => ( pushprop_lem1v2_lthm != sP20 ) )
                                         => ~ hoasapnotvar )
                                     => ( hoasinduction_lem0 != sP10 ) )
                                 => ( hoasinduction
                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                 => ~ ! [X3: term,X4: term] :
                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                             => ~ ! [X3: subst > term > term] :
                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X1 @ id @ X4 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                         => ( X1 @ id @ X2 @ id ) ) ) ) )
                             => ~ hoasinduction_gthm )
                         => ~ axapp )
                     => ~ hoaslamnotvar_lthm )
                 => ~ pushprop_lem3v2_lthm )
             => ( hoasinduction_lem3b_lthm != sP9 ) )
         => ~ ulamvarind )
     => ( induction
       != ( ! [X1: term > $o,X2: term] :
              ( ~ ( ~ ( ! [X3: term] :
                          ( ( var @ X3 )
                         => ( X1 @ X3 ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ X3 )
                               => ~ ( X1 @ X4 ) )
                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ X3 )
                       => ( X1 @ ( lam @ X3 ) ) ) )
             => ( X1 @ X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h150,assumption,
    ( hoasinduction_lem3a_lthm
    = ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( sP40
       => ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ! [X3: subst > term > term] :
                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                       => ~ ! [X4: term] :
                              ( ( X1 @ id @ X4 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
               => ~ ! [X3: term] :
                      ( ( X1 @ id @ X3 @ id )
                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h151,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                     => ( id
                                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                                 => ( sh
                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                         => ~ sP36 )
                                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                                         => ~ axmap )
                                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                                 => ( shinj
                                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                     => ( induction2lem
                                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                        ( ( var @ X4 )
                                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                             => ~ axvarshift )
                                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                                 => ( hoasapinj1
                                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                             => ulamvar1 )
                                                                                                         => ( induction2lem_lthm
                                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                                  ( X1
                                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                                    ( X2
                                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                               => ( sP17
                                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                    ( ( var @ X3 )
                                                                                                                                   => ( X1 @ X3 ) )
                                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                           => ~ ! [X3: term] :
                                                                                                                                  ( ( X1 @ X3 )
                                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                       => ( X1 @ X2 ) )
                                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                               => ~ ! [X4: term] :
                                                                                                                                      ( ! [X5: term] :
                                                                                                                                          ( ( X1 @ X5 )
                                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ( var @ X4 )
                                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                                 => ~ apnotvar )
                                                                                             => ~ pushprop_lthm_orig )
                                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                     => ( hoasinduction_lthm
                                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                                          ( ( var @ X3 )
                                                                                                         => ( X1 @ X3 ) )
                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                                               => ~ ( X1 @ X4 ) )
                                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ! [X4: term] :
                                                                                                            ( ( X1 @ X4 )
                                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                             => ( X1 @ X2 ) )
                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                             => ~ ! [X3: term] :
                                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                                   != ( sP10
                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                        ( ( var @ X3 )
                                                                                                       => ( X1 @ X3 ) )
                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                               => ~ ! [X3: term] :
                                                                                                      ( ! [X4: term] :
                                                                                                          ( ( X1 @ X4 )
                                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                           => ( X1 @ X2 ) )
                                                                                       => ( ! [X1: term] :
                                                                                              ( X1
                                                                                              = ( sub @ X1 @ id ) )
                                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                               => ~ ! [X5: term] :
                                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X2 @ X4 )
                                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X2 @ X4 )
                                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                             => ~ ! [X4: term] :
                                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                             => ( hoaslaminj
                                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                     => ( ( X1 @ X3 @ X4 )
                                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                         => ( hoasinduction_lem3aaa
                                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                     => ~ induction2lem_gthm )
                                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                             => ( hoasinduction_lem3
                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                             => ~ ! [X3: subst > term > term] :
                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ( X1 @ id @ X3 @ id )
                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                         => ( hoasinduction_lem2
                                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                             => ~ ! [X4: term,X5: term] :
                                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                                 => ~ hoasinduction_lem1 )
                                             => ~ hoaslamnotap_lthm )
                                         => ( pushprop_lem1v2_lthm != sP20 ) )
                                     => ~ hoasapnotvar )
                                 => ( hoasinduction_lem0 != sP10 ) )
                             => ( hoasinduction
                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                       => ( X1 @ id @ X3 @ id ) ) )
                                             => ~ ! [X3: term,X4: term] :
                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                         => ~ ! [X3: subst > term > term] :
                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X1 @ id @ X4 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                         => ~ hoasinduction_gthm )
                     => ~ axapp )
                 => ~ hoaslamnotvar_lthm )
             => ~ pushprop_lem3v2_lthm )
         => ( hoasinduction_lem3b_lthm != sP9 ) )
     => ~ ulamvarind ),
    introduced(assumption,[]) ).

thf(h152,assumption,
    ( induction
    = ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ( X1 @ X3 )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h153,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                 => ( id
                                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                                             => ( sh
                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                             => ( hoaslam
                                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                     => ~ sP36 )
                                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                                     => ~ axmap )
                                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                                             => ( shinj
                                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                                 => ( induction2lem
                                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                                        ( ! [X5: term] :
                                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                    ( ( var @ X4 )
                                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                         => ~ axvarshift )
                                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                                             => ( hoasapinj1
                                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                         => ulamvar1 )
                                                                                                     => ( induction2lem_lthm
                                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                                              ( X1
                                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                                ( X2
                                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                           => ( sP17
                                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                                ( ( var @ X3 )
                                                                                                                               => ( X1 @ X3 ) )
                                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                       => ~ ! [X3: term] :
                                                                                                                              ( ( X1 @ X3 )
                                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                                   => ( X1 @ X2 ) )
                                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                           => ~ ! [X4: term] :
                                                                                                                                  ( ! [X5: term] :
                                                                                                                                      ( ( X1 @ X5 )
                                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ( var @ X4 )
                                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                                             => ~ apnotvar )
                                                                                         => ~ pushprop_lthm_orig )
                                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                                 => ( hoasinduction_lthm
                                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                                      ( ( var @ X3 )
                                                                                                     => ( X1 @ X3 ) )
                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                                           => ~ ( X1 @ X4 ) )
                                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ! [X4: term] :
                                                                                                        ( ( X1 @ X4 )
                                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                         => ( X1 @ X2 ) )
                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                         => ~ ! [X3: term] :
                                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                             => ( hoasinduction_no_psi_cond_lthm
                                                                               != ( sP10
                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                    ( ( var @ X3 )
                                                                                                   => ( X1 @ X3 ) )
                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                           => ~ ! [X3: term] :
                                                                                                  ( ! [X4: term] :
                                                                                                      ( ( X1 @ X4 )
                                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                       => ( X1 @ X2 ) )
                                                                                   => ( ! [X1: term] :
                                                                                          ( X1
                                                                                          = ( sub @ X1 @ id ) )
                                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                           => ~ ! [X5: term] :
                                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X2 @ X4 )
                                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X2 @ X4 )
                                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                               => ~ ! [X3: subst > term > term] :
                                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                         => ~ ! [X4: term] :
                                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                         => ( hoaslaminj
                                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                                 => ( ( X1 @ X3 @ X4 )
                                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                     => ( hoasinduction_lem3aaa
                                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                                 => ~ induction2lem_gthm )
                                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                         => ( hoasinduction_lem3
                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                         => ~ ! [X3: subst > term > term] :
                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ( X1 @ id @ X3 @ id )
                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                     => ( hoasinduction_lem2
                                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                         => ~ ! [X4: term,X5: term] :
                                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                                             => ~ hoasinduction_lem1 )
                                         => ~ hoaslamnotap_lthm )
                                     => ( pushprop_lem1v2_lthm != sP20 ) )
                                 => ~ hoasapnotvar )
                             => ( hoasinduction_lem0 != sP10 ) )
                         => ( hoasinduction
                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                   => ( X1 @ id @ X3 @ id ) ) )
                                         => ~ ! [X3: term,X4: term] :
                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                     => ~ ! [X3: subst > term > term] :
                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X1 @ id @ X4 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                 => ( X1 @ id @ X2 @ id ) ) ) ) )
                     => ~ hoasinduction_gthm )
                 => ~ axapp )
             => ~ hoaslamnotvar_lthm )
         => ~ pushprop_lem3v2_lthm )
     => ( hoasinduction_lem3b_lthm != sP9 ) ),
    introduced(assumption,[]) ).

thf(h154,assumption,
    ulamvarind,
    introduced(assumption,[]) ).

thf(h155,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                             => ( one
                                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                             => ( id
                                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                                         => ( sh
                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                         => ( hoaslam
                                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                            ! [X3: term] :
                                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                                 => ~ sP36 )
                                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                                 => ~ axmap )
                                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                                         => ( shinj
                                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                                             => ( induction2lem
                                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                                    ( ! [X5: term] :
                                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                ( ( var @ X4 )
                                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                     => ~ axvarshift )
                                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                                             => ~ hoasapnotvar_gthm )
                                                                                                         => ( hoasapinj1
                                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                     => ulamvar1 )
                                                                                                 => ( induction2lem_lthm
                                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                                          ( X1
                                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                                            ( X2
                                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                       => ( sP17
                                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                                            ( ( var @ X3 )
                                                                                                                           => ( X1 @ X3 ) )
                                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                                   => ~ ! [X3: term] :
                                                                                                                          ( ( X1 @ X3 )
                                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                               => ( X1 @ X2 ) )
                                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                       => ~ ! [X4: term] :
                                                                                                                              ( ! [X5: term] :
                                                                                                                                  ( ( X1 @ X5 )
                                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ( var @ X4 )
                                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                                         => ~ apnotvar )
                                                                                     => ~ pushprop_lthm_orig )
                                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                             => ( hoasinduction_lthm
                                                                               != ( ! [X1: term > $o,X2: term] :
                                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                                  ( ( var @ X3 )
                                                                                                 => ( X1 @ X3 ) )
                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                                       => ~ ( X1 @ X4 ) )
                                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ! [X4: term] :
                                                                                                    ( ( X1 @ X4 )
                                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                     => ( X1 @ X2 ) )
                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                     => ~ ! [X3: term] :
                                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                         => ( hoasinduction_no_psi_cond_lthm
                                                                           != ( sP10
                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                ( ( var @ X3 )
                                                                                               => ( X1 @ X3 ) )
                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                       => ~ ! [X3: term] :
                                                                                              ( ! [X4: term] :
                                                                                                  ( ( X1 @ X4 )
                                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                   => ( X1 @ X2 ) )
                                                                               => ( ! [X1: term] :
                                                                                      ( X1
                                                                                      = ( sub @ X1 @ id ) )
                                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                       => ~ ! [X5: term] :
                                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X2 @ X4 )
                                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X2 @ X4 )
                                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                           => ~ ! [X3: subst > term > term] :
                                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                     => ~ ! [X4: term] :
                                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                     => ( hoaslaminj
                                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                             => ( ( X1 @ X3 @ X4 )
                                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                                 => ( hoasinduction_lem3aaa
                                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                             => ~ induction2lem_gthm )
                                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                     => ( hoasinduction_lem3
                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                     => ~ ! [X3: subst > term > term] :
                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( X1 @ id @ X3 @ id )
                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                                 => ( hoasinduction_lem2
                                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                     => ~ ! [X4: term,X5: term] :
                                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                                             => ~ ( X1 @ id @ X3 @ id ) )
                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                             => ( termmset_lthm != ( ~ sP33 ) ) )
                                         => ~ hoasinduction_lem1 )
                                     => ~ hoaslamnotap_lthm )
                                 => ( pushprop_lem1v2_lthm != sP20 ) )
                             => ~ hoasapnotvar )
                         => ( hoasinduction_lem0 != sP10 ) )
                     => ( hoasinduction
                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                         => ~ ! [X3: term] :
                                                ( ( var @ ( sub @ X3 @ id ) )
                                               => ( X1 @ id @ X3 @ id ) ) )
                                     => ~ ! [X3: term,X4: term] :
                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                               => ~ ( X1 @ id @ X4 @ id ) )
                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                 => ~ ! [X3: subst > term > term] :
                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X1 @ id @ X4 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                             => ( X1 @ id @ X2 @ id ) ) ) ) )
                 => ~ hoasinduction_gthm )
             => ~ axapp )
         => ~ hoaslamnotvar_lthm )
     => ~ pushprop_lem3v2_lthm ),
    introduced(assumption,[]) ).

thf(h156,assumption,
    hoasinduction_lem3b_lthm = sP9,
    introduced(assumption,[]) ).

thf(h157,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                         => ( one
                                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                         => ( id
                                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                                     => ( sh
                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                     => ( hoaslam
                                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                        ! [X3: term] :
                                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                             => ~ sP36 )
                                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                                             => ~ axmap )
                                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                                     => ( shinj
                                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                                         => ( induction2lem
                                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                                ( ! [X5: term] :
                                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                            ( ( var @ X4 )
                                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                                 => ~ axvarshift )
                                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                                         => ~ hoasapnotvar_gthm )
                                                                                                     => ( hoasapinj1
                                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                 => ulamvar1 )
                                                                                             => ( induction2lem_lthm
                                                                                               != ( ! [X1: term,X2: subst] :
                                                                                                      ( X1
                                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                                        ( X2
                                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                                   => ( sP17
                                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                                        ( ( var @ X3 )
                                                                                                                       => ( X1 @ X3 ) )
                                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                               => ~ ! [X3: term] :
                                                                                                                      ( ( X1 @ X3 )
                                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                           => ( X1 @ X2 ) )
                                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                   => ~ ! [X4: term] :
                                                                                                                          ( ! [X5: term] :
                                                                                                                              ( ( X1 @ X5 )
                                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ( var @ X4 )
                                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                                     => ~ apnotvar )
                                                                                 => ~ pushprop_lthm_orig )
                                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                         => ( hoasinduction_lthm
                                                                           != ( ! [X1: term > $o,X2: term] :
                                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                                              ( ( var @ X3 )
                                                                                             => ( X1 @ X3 ) )
                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                ( ~ ( ( X1 @ X3 )
                                                                                                   => ~ ( X1 @ X4 ) )
                                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ! [X4: term] :
                                                                                                ( ( X1 @ X4 )
                                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                 => ( X1 @ X2 ) )
                                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                               => ~ ! [X4: term,X5: term] :
                                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                             => ~ ! [X3: subst > term > term] :
                                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ( X1 @ id @ X3 @ id )
                                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                                 => ~ ! [X3: term] :
                                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                                             => ~ ! [X3: term,X4: term] :
                                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                     => ( hoasinduction_no_psi_cond_lthm
                                                                       != ( sP10
                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                            ( ( var @ X3 )
                                                                                           => ( X1 @ X3 ) )
                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                   => ~ ! [X3: term] :
                                                                                          ( ! [X4: term] :
                                                                                              ( ( X1 @ X4 )
                                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                               => ( X1 @ X2 ) )
                                                                           => ( ! [X1: term] :
                                                                                  ( X1
                                                                                  = ( sub @ X1 @ id ) )
                                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                                   => ~ ! [X5: term] :
                                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X2 @ X4 )
                                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X2 @ X4 )
                                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                       => ~ ! [X3: subst > term > term] :
                                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                 => ~ ! [X4: term] :
                                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                                 => ( hoaslaminj
                                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                         => ( ( X1 @ X3 @ X4 )
                                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                             => ( hoasinduction_lem3aaa
                                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ( X1 @ id @ X3 @ id )
                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                         => ~ induction2lem_gthm )
                                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                                 => ( hoasinduction_lem3
                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                 => ~ ! [X3: subst > term > term] :
                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( X1 @ id @ X3 @ id )
                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                             => ( hoasinduction_lem2
                                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                 => ~ ! [X4: term,X5: term] :
                                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                             => ~ ( X1 @ id @ X2 @ id ) )
                                                         => ~ ( X1 @ id @ X3 @ id ) )
                                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                         => ( termmset_lthm != ( ~ sP33 ) ) )
                                     => ~ hoasinduction_lem1 )
                                 => ~ hoaslamnotap_lthm )
                             => ( pushprop_lem1v2_lthm != sP20 ) )
                         => ~ hoasapnotvar )
                     => ( hoasinduction_lem0 != sP10 ) )
                 => ( hoasinduction
                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                     => ~ ! [X3: term] :
                                            ( ( var @ ( sub @ X3 @ id ) )
                                           => ( X1 @ id @ X3 @ id ) ) )
                                 => ~ ! [X3: term,X4: term] :
                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                           => ~ ( X1 @ id @ X4 @ id ) )
                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                             => ~ ! [X3: subst > term > term] :
                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X1 @ id @ X4 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                         => ( X1 @ id @ X2 @ id ) ) ) ) )
             => ~ hoasinduction_gthm )
         => ~ axapp )
     => ~ hoaslamnotvar_lthm ),
    introduced(assumption,[]) ).

thf(h158,assumption,
    pushprop_lem3v2_lthm,
    introduced(assumption,[]) ).

thf(h159,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                     => ( one
                                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                     => ( id
                                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                                 => ( sh
                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                 => ( hoaslam
                                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                    ! [X3: term] :
                                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                         => ~ sP36 )
                                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                                         => ~ axmap )
                                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                                 => ( shinj
                                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                                     => ( induction2lem
                                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                     => ~ ! [X4: term] :
                                                                                                                                            ( ! [X5: term] :
                                                                                                                                                ( ( X1 @ X5 )
                                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                        ( ( var @ X4 )
                                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                             => ~ axvarshift )
                                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                                     => ~ hoasapnotvar_gthm )
                                                                                                 => ( hoasapinj1
                                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                             => ulamvar1 )
                                                                                         => ( induction2lem_lthm
                                                                                           != ( ! [X1: term,X2: subst] :
                                                                                                  ( X1
                                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                             => ( ! [X1: term,X2: subst] :
                                                                                                    ( X2
                                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                               => ( sP17
                                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                                    ( ( var @ X3 )
                                                                                                                   => ( X1 @ X3 ) )
                                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                           => ~ ! [X3: term] :
                                                                                                                  ( ( X1 @ X3 )
                                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                       => ( X1 @ X2 ) )
                                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                               => ~ ! [X4: term] :
                                                                                                                      ( ! [X5: term] :
                                                                                                                          ( ( X1 @ X5 )
                                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ( var @ X4 )
                                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                                 => ~ apnotvar )
                                                                             => ~ pushprop_lthm_orig )
                                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                     => ( hoasinduction_lthm
                                                                       != ( ! [X1: term > $o,X2: term] :
                                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                                          ( ( var @ X3 )
                                                                                         => ( X1 @ X3 ) )
                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                            ( ~ ( ( X1 @ X3 )
                                                                                               => ~ ( X1 @ X4 ) )
                                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ! [X4: term] :
                                                                                            ( ( X1 @ X4 )
                                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                                             => ( X1 @ X2 ) )
                                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                           => ~ ! [X4: term,X5: term] :
                                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                         => ~ ! [X3: subst > term > term] :
                                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ( X1 @ id @ X3 @ id )
                                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                             => ~ ! [X3: term] :
                                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                                         => ~ ! [X3: term,X4: term] :
                                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                                 => ( hoasinduction_no_psi_cond_lthm
                                                                   != ( sP10
                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                        ( ( var @ X3 )
                                                                                       => ( X1 @ X3 ) )
                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                             => ~ ( X1 @ X4 ) )
                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                               => ~ ! [X3: term] :
                                                                                      ( ! [X4: term] :
                                                                                          ( ( X1 @ X4 )
                                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                           => ( X1 @ X2 ) )
                                                                       => ( ! [X1: term] :
                                                                              ( X1
                                                                              = ( sub @ X1 @ id ) )
                                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                               => ~ ! [X5: term] :
                                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X2 @ X4 )
                                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X2 @ X4 )
                                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                                   => ~ ! [X3: subst > term > term] :
                                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                             => ~ ! [X4: term] :
                                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                             => ( hoaslaminj
                                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                     => ( ( X1 @ X3 @ X4 )
                                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                         => ( hoasinduction_lem3aaa
                                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ( X1 @ id @ X3 @ id )
                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                     => ~ induction2lem_gthm )
                                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                             => ( hoasinduction_lem3
                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                             => ~ ! [X3: subst > term > term] :
                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X1 @ id @ X4 @ id )
                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( X1 @ id @ X3 @ id )
                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                         => ( hoasinduction_lem2
                                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                             => ~ ! [X4: term,X5: term] :
                                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                         => ~ ( X1 @ id @ X2 @ id ) )
                                                     => ~ ( X1 @ id @ X3 @ id ) )
                                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                     => ( termmset_lthm != ( ~ sP33 ) ) )
                                 => ~ hoasinduction_lem1 )
                             => ~ hoaslamnotap_lthm )
                         => ( pushprop_lem1v2_lthm != sP20 ) )
                     => ~ hoasapnotvar )
                 => ( hoasinduction_lem0 != sP10 ) )
             => ( hoasinduction
               != ( ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                 => ~ ! [X3: term] :
                                        ( ( var @ ( sub @ X3 @ id ) )
                                       => ( X1 @ id @ X3 @ id ) ) )
                             => ~ ! [X3: term,X4: term] :
                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                       => ~ ( X1 @ id @ X4 @ id ) )
                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                         => ~ ! [X3: subst > term > term] :
                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X1 @ id @ X4 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                     => ( X1 @ id @ X2 @ id ) ) ) ) )
         => ~ hoasinduction_gthm )
     => ~ axapp ),
    introduced(assumption,[]) ).

thf(h160,assumption,
    hoaslamnotvar_lthm,
    introduced(assumption,[]) ).

thf(h161,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                 => ( one
                                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                 => ( id
                                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                                             => ( sh
                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                             => ( hoaslam
                                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                                ! [X3: term] :
                                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                     => ~ sP36 )
                                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                                     => ~ axmap )
                                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                                             => ( shinj
                                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                                 => ( induction2lem
                                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                                 => ~ ! [X4: term] :
                                                                                                                                        ( ! [X5: term] :
                                                                                                                                            ( ( X1 @ X5 )
                                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                    ( ( var @ X4 )
                                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                         => ~ axvarshift )
                                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                                 => ~ hoasapnotvar_gthm )
                                                                                             => ( hoasapinj1
                                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                         => ulamvar1 )
                                                                                     => ( induction2lem_lthm
                                                                                       != ( ! [X1: term,X2: subst] :
                                                                                              ( X1
                                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                         => ( ! [X1: term,X2: subst] :
                                                                                                ( X2
                                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                           => ( sP17
                                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                                ( ( var @ X3 )
                                                                                                               => ( X1 @ X3 ) )
                                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                       => ~ ! [X3: term] :
                                                                                                              ( ( X1 @ X3 )
                                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                                   => ( X1 @ X2 ) )
                                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                           => ~ ! [X4: term] :
                                                                                                                  ( ! [X5: term] :
                                                                                                                      ( ( X1 @ X5 )
                                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ( var @ X4 )
                                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                                             => ~ apnotvar )
                                                                         => ~ pushprop_lthm_orig )
                                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                                 => ( hoasinduction_lthm
                                                                   != ( ! [X1: term > $o,X2: term] :
                                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                                      ( ( var @ X3 )
                                                                                     => ( X1 @ X3 ) )
                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                        ( ~ ( ( X1 @ X3 )
                                                                                           => ~ ( X1 @ X4 ) )
                                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ! [X4: term] :
                                                                                        ( ( X1 @ X4 )
                                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                                         => ( X1 @ X2 ) )
                                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                       => ~ ! [X4: term,X5: term] :
                                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                     => ~ ! [X3: subst > term > term] :
                                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                         => ~ ! [X3: term] :
                                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                                     => ~ ! [X3: term,X4: term] :
                                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                             => ( hoasinduction_no_psi_cond_lthm
                                                               != ( sP10
                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                    ( ( var @ X3 )
                                                                                   => ( X1 @ X3 ) )
                                                                               => ~ ! [X3: term,X4: term] :
                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                         => ~ ( X1 @ X4 ) )
                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                           => ~ ! [X3: term] :
                                                                                  ( ! [X4: term] :
                                                                                      ( ( X1 @ X4 )
                                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                       => ( X1 @ X2 ) )
                                                                   => ( ! [X1: term] :
                                                                          ( X1
                                                                          = ( sub @ X1 @ id ) )
                                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                           => ~ ! [X5: term] :
                                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X2 @ X4 )
                                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X2 @ X4 )
                                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                               => ~ ! [X3: subst > term > term] :
                                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                         => ~ ! [X4: term] :
                                                                                                ( ( X1 @ id @ X4 @ id )
                                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                         => ( hoaslaminj
                                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                                 => ( ( X1 @ X3 @ X4 )
                                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                     => ( hoasinduction_lem3aaa
                                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( X1 @ id @ X3 @ id )
                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                                 => ~ induction2lem_gthm )
                                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                         => ( hoasinduction_lem3
                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                         => ~ ! [X3: subst > term > term] :
                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X1 @ id @ X4 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( X1 @ id @ X3 @ id )
                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                     => ( hoasinduction_lem2
                                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                         => ~ ! [X4: term,X5: term] :
                                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                     => ~ ( X1 @ id @ X2 @ id ) )
                                                 => ~ ( X1 @ id @ X3 @ id ) )
                                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                                 => ( termmset_lthm != ( ~ sP33 ) ) )
                             => ~ hoasinduction_lem1 )
                         => ~ hoaslamnotap_lthm )
                     => ( pushprop_lem1v2_lthm != sP20 ) )
                 => ~ hoasapnotvar )
             => ( hoasinduction_lem0 != sP10 ) )
         => ( hoasinduction
           != ( ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                             => ~ ! [X3: term] :
                                    ( ( var @ ( sub @ X3 @ id ) )
                                   => ( X1 @ id @ X3 @ id ) ) )
                         => ~ ! [X3: term,X4: term] :
                                ( ~ ( ( X1 @ id @ X3 @ id )
                                   => ~ ( X1 @ id @ X4 @ id ) )
                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                     => ~ ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                 => ( X1 @ id @ X2 @ id ) ) ) ) )
     => ~ hoasinduction_gthm ),
    introduced(assumption,[]) ).

thf(h162,assumption,
    axapp,
    introduced(assumption,[]) ).

thf(h163,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                             => ( one
                                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                             => ( id
                                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                                         => ( sh
                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                         => ( hoaslam
                                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                            ! [X3: term] :
                                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                                 => ~ sP36 )
                                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                                 => ~ axmap )
                                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                                         => ( shinj
                                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                                             => ( induction2lem
                                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                             => ~ ! [X4: term] :
                                                                                                                                    ( ! [X5: term] :
                                                                                                                                        ( ( X1 @ X5 )
                                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                ( ( var @ X4 )
                                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                     => ~ axvarshift )
                                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                                             => ~ hoasapnotvar_gthm )
                                                                                         => ( hoasapinj1
                                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                     => ulamvar1 )
                                                                                 => ( induction2lem_lthm
                                                                                   != ( ! [X1: term,X2: subst] :
                                                                                          ( X1
                                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                     => ( ! [X1: term,X2: subst] :
                                                                                            ( X2
                                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                       => ( sP17
                                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                                            ( ( var @ X3 )
                                                                                                           => ( X1 @ X3 ) )
                                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                                   => ~ ! [X3: term] :
                                                                                                          ( ( X1 @ X3 )
                                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                               => ( X1 @ X2 ) )
                                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                                               => ~ ( X1 @ X5 ) )
                                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                       => ~ ! [X4: term] :
                                                                                                              ( ! [X5: term] :
                                                                                                                  ( ( X1 @ X5 )
                                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ( var @ X4 )
                                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                             => ~ hoasinduction_lem3v2_gthm )
                                                                         => ~ apnotvar )
                                                                     => ~ pushprop_lthm_orig )
                                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                             => ( hoasinduction_lthm
                                                               != ( ! [X1: term > $o,X2: term] :
                                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                                  ( ( var @ X3 )
                                                                                 => ( X1 @ X3 ) )
                                                                             => ~ ! [X3: term,X4: term] :
                                                                                    ( ~ ( ( X1 @ X3 )
                                                                                       => ~ ( X1 @ X4 ) )
                                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ! [X4: term] :
                                                                                    ( ( X1 @ X4 )
                                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                                     => ( X1 @ X2 ) )
                                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                                   => ~ ! [X4: term,X5: term] :
                                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                 => ~ ! [X3: subst > term > term] :
                                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ( X1 @ id @ X3 @ id )
                                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                     => ~ ! [X3: term] :
                                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                                 => ~ ! [X3: term,X4: term] :
                                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                             => ~ ! [X3: subst > term > term] :
                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                         => ( hoasinduction_no_psi_cond_lthm
                                                           != ( sP10
                                                             => ( ! [X1: term > $o,X2: term] :
                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                ( ( var @ X3 )
                                                                               => ( X1 @ X3 ) )
                                                                           => ~ ! [X3: term,X4: term] :
                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                     => ~ ( X1 @ X4 ) )
                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                       => ~ ! [X3: term] :
                                                                              ( ! [X4: term] :
                                                                                  ( ( X1 @ X4 )
                                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                   => ( X1 @ X2 ) )
                                                               => ( ! [X1: term] :
                                                                      ( X1
                                                                      = ( sub @ X1 @ id ) )
                                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                       => ~ ! [X5: term] :
                                                                                              ( ( X1 @ id @ X5 @ id )
                                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X2 @ X4 )
                                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X2 @ X4 )
                                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                           => ~ ! [X3: subst > term > term] :
                                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                     => ~ ! [X4: term] :
                                                                                            ( ( X1 @ id @ X4 @ id )
                                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                     => ( hoaslaminj
                                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                             => ( ( X1 @ X3 @ X4 )
                                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                                 => ( hoasinduction_lem3aaa
                                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                                  ( ~ ( ~ ( ! [X5: term] :
                                                                              ( ( X1 @ id @ X5 @ id )
                                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( X1 @ id @ X3 @ id )
                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                             => ~ induction2lem_gthm )
                                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                     => ( hoasinduction_lem3
                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                     => ~ ! [X3: subst > term > term] :
                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X1 @ id @ X4 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( X1 @ id @ X3 @ id )
                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                                 => ( hoasinduction_lem2
                                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                     => ~ ! [X4: term,X5: term] :
                                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                                               => ~ ( X1 @ id @ X5 @ id ) )
                                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                 => ~ ( X1 @ id @ X2 @ id ) )
                                             => ~ ( X1 @ id @ X3 @ id ) )
                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                             => ( termmset_lthm != ( ~ sP33 ) ) )
                         => ~ hoasinduction_lem1 )
                     => ~ hoaslamnotap_lthm )
                 => ( pushprop_lem1v2_lthm != sP20 ) )
             => ~ hoasapnotvar )
         => ( hoasinduction_lem0 != sP10 ) )
     => ( hoasinduction
       != ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( var @ ( sub @ X3 @ id ) )
                               => ( X1 @ id @ X3 @ id ) ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ id @ X3 @ id )
                               => ~ ( X1 @ id @ X4 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h164,assumption,
    hoasinduction_gthm,
    introduced(assumption,[]) ).

thf(h165,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                                ( X1
                                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                         => ( one
                                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                         => ( id
                                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                                     => ( sh
                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                     => ( hoaslam
                                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                        ! [X3: term] :
                                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                             => ~ sP36 )
                                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                                             => ~ axmap )
                                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                                     => ( shinj
                                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                                         => ( induction2lem
                                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                         => ~ ! [X4: term] :
                                                                                                                                ( ! [X5: term] :
                                                                                                                                    ( ( X1 @ X5 )
                                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                     => ~ ! [X4: term] :
                                                                                                                            ( ( var @ X4 )
                                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                                 => ~ axvarshift )
                                                                                             => ( hoasapinj2 != sP26 ) )
                                                                                         => ~ hoasapnotvar_gthm )
                                                                                     => ( hoasapinj1
                                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                 => ulamvar1 )
                                                                             => ( induction2lem_lthm
                                                                               != ( ! [X1: term,X2: subst] :
                                                                                      ( X1
                                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                                 => ( ! [X1: term,X2: subst] :
                                                                                        ( X2
                                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                                   => ( sP17
                                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                                        ( ( var @ X3 )
                                                                                                       => ( X1 @ X3 ) )
                                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                                             => ~ ( X1 @ X4 ) )
                                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                               => ~ ! [X3: term] :
                                                                                                      ( ( X1 @ X3 )
                                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                           => ( X1 @ X2 ) )
                                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                                           => ~ ( X1 @ X5 ) )
                                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                   => ~ ! [X4: term] :
                                                                                                          ( ! [X5: term] :
                                                                                                              ( ( X1 @ X5 )
                                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ( var @ X4 )
                                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                         => ~ hoasinduction_lem3v2_gthm )
                                                                     => ~ apnotvar )
                                                                 => ~ pushprop_lthm_orig )
                                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                         => ( hoasinduction_lthm
                                                           != ( ! [X1: term > $o,X2: term] :
                                                                  ( ~ ( ~ ( ! [X3: term] :
                                                                              ( ( var @ X3 )
                                                                             => ( X1 @ X3 ) )
                                                                         => ~ ! [X3: term,X4: term] :
                                                                                ( ~ ( ( X1 @ X3 )
                                                                                   => ~ ( X1 @ X4 ) )
                                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ! [X4: term] :
                                                                                ( ( X1 @ X4 )
                                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                                 => ( X1 @ X2 ) )
                                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                               => ~ ! [X4: term,X5: term] :
                                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                             => ~ ! [X3: subst > term > term] :
                                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( X1 @ id @ X4 @ id )
                                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ( X1 @ id @ X3 @ id )
                                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                                 => ~ ! [X3: term] :
                                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                                             => ~ ! [X3: term,X4: term] :
                                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                         => ~ ! [X3: subst > term > term] :
                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                     => ( hoasinduction_no_psi_cond_lthm
                                                       != ( sP10
                                                         => ( ! [X1: term > $o,X2: term] :
                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                            ( ( var @ X3 )
                                                                           => ( X1 @ X3 ) )
                                                                       => ~ ! [X3: term,X4: term] :
                                                                              ( ~ ( ( X1 @ X3 )
                                                                                 => ~ ( X1 @ X4 ) )
                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                   => ~ ! [X3: term] :
                                                                          ( ! [X4: term] :
                                                                              ( ( X1 @ X4 )
                                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                               => ( X1 @ X2 ) )
                                                           => ( ! [X1: term] :
                                                                  ( X1
                                                                  = ( sub @ X1 @ id ) )
                                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                                   => ~ ! [X5: term] :
                                                                                          ( ( X1 @ id @ X5 @ id )
                                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X2 @ X4 )
                                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X2 @ X4 )
                                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                                   => ( X2 @ ( lam @ X3 ) ) )
                                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                                    ( ~ ( ! [X3: term,X4: term] :
                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                       => ~ ! [X3: subst > term > term] :
                                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                 => ~ ! [X4: term] :
                                                                                        ( ( X1 @ id @ X4 @ id )
                                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                                 => ( hoaslaminj
                                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                         => ( ( X1 @ X3 @ X4 )
                                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                             => ( hoasinduction_lem3aaa
                                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                              ( ~ ( ~ ( ! [X5: term] :
                                                                          ( ( X1 @ id @ X5 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( X1 @ id @ X3 @ id )
                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                         => ~ induction2lem_gthm )
                                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                                 => ( hoasinduction_lem3
                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                 => ~ ! [X3: subst > term > term] :
                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X1 @ id @ X4 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ( X1 @ id @ X3 @ id )
                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                             => ( hoasinduction_lem2
                               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                 => ~ ! [X4: term,X5: term] :
                                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                                           => ~ ( X1 @ id @ X5 @ id ) )
                                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                             => ~ ( X1 @ id @ X2 @ id ) )
                                         => ~ ( X1 @ id @ X3 @ id ) )
                                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                         => ( termmset_lthm != ( ~ sP33 ) ) )
                     => ~ hoasinduction_lem1 )
                 => ~ hoaslamnotap_lthm )
             => ( pushprop_lem1v2_lthm != sP20 ) )
         => ~ hoasapnotvar )
     => ( hoasinduction_lem0 != sP10 ) ),
    introduced(assumption,[]) ).

thf(h166,assumption,
    ( hoasinduction
    = ( ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                     => ~ ! [X3: term] :
                            ( ( var @ ( sub @ X3 @ id ) )
                           => ( X1 @ id @ X3 @ id ) ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ id @ X3 @ id )
                           => ~ ( X1 @ id @ X4 @ id ) )
                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
             => ~ ! [X3: subst > term > term] :
                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                       => ~ ! [X4: term] :
                              ( ( X1 @ id @ X4 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
         => ( X1 @ id @ X2 @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h167,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                                            ( X1
                                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                     => ( one
                                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                     => ( id
                                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                                 => ( sh
                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                 => ( hoaslam
                                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                    ! [X3: term] :
                                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                         => ~ sP36 )
                                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                                         => ~ axmap )
                                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                                 => ( shinj
                                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                                     => ( induction2lem
                                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                     => ~ ! [X4: term] :
                                                                                                                            ( ! [X5: term] :
                                                                                                                                ( ( X1 @ X5 )
                                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                                 => ~ ! [X4: term] :
                                                                                                                        ( ( var @ X4 )
                                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                             => ~ axvarshift )
                                                                                         => ( hoasapinj2 != sP26 ) )
                                                                                     => ~ hoasapnotvar_gthm )
                                                                                 => ( hoasapinj1
                                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                             => ulamvar1 )
                                                                         => ( induction2lem_lthm
                                                                           != ( ! [X1: term,X2: subst] :
                                                                                  ( X1
                                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                             => ( ! [X1: term,X2: subst] :
                                                                                    ( X2
                                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                               => ( sP17
                                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                                    ( ( var @ X3 )
                                                                                                   => ( X1 @ X3 ) )
                                                                                               => ~ ! [X3: term,X4: term] :
                                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                                         => ~ ( X1 @ X4 ) )
                                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                           => ~ ! [X3: term] :
                                                                                                  ( ( X1 @ X3 )
                                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                       => ( X1 @ X2 ) )
                                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                                       => ~ ( X1 @ X5 ) )
                                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                               => ~ ! [X4: term] :
                                                                                                      ( ! [X5: term] :
                                                                                                          ( ( X1 @ X5 )
                                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ( var @ X4 )
                                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                     => ~ hoasinduction_lem3v2_gthm )
                                                                 => ~ apnotvar )
                                                             => ~ pushprop_lthm_orig )
                                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                     => ( hoasinduction_lthm
                                                       != ( ! [X1: term > $o,X2: term] :
                                                              ( ~ ( ~ ( ! [X3: term] :
                                                                          ( ( var @ X3 )
                                                                         => ( X1 @ X3 ) )
                                                                     => ~ ! [X3: term,X4: term] :
                                                                            ( ~ ( ( X1 @ X3 )
                                                                               => ~ ( X1 @ X4 ) )
                                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ! [X4: term] :
                                                                            ( ( X1 @ X4 )
                                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                                             => ( X1 @ X2 ) )
                                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                           => ~ ! [X4: term,X5: term] :
                                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                         => ~ ! [X3: subst > term > term] :
                                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( X1 @ id @ X4 @ id )
                                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ( X1 @ id @ X3 @ id )
                                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                             => ~ ! [X3: term] :
                                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                                         => ~ ! [X3: term,X4: term] :
                                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                     => ~ ! [X3: subst > term > term] :
                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                                 => ( hoasinduction_no_psi_cond_lthm
                                                   != ( sP10
                                                     => ( ! [X1: term > $o,X2: term] :
                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                        ( ( var @ X3 )
                                                                       => ( X1 @ X3 ) )
                                                                   => ~ ! [X3: term,X4: term] :
                                                                          ( ~ ( ( X1 @ X3 )
                                                                             => ~ ( X1 @ X4 ) )
                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                               => ~ ! [X3: term] :
                                                                      ( ! [X4: term] :
                                                                          ( ( X1 @ X4 )
                                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                           => ( X1 @ X2 ) )
                                                       => ( ! [X1: term] :
                                                              ( X1
                                                              = ( sub @ X1 @ id ) )
                                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                               => ~ ! [X5: term] :
                                                                                      ( ( X1 @ id @ X5 @ id )
                                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X2 @ X4 )
                                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X2 @ X4 )
                                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                               => ( X2 @ ( lam @ X3 ) ) )
                                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                                ( ~ ( ! [X3: term,X4: term] :
                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                                   => ~ ! [X3: subst > term > term] :
                                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                             => ~ ! [X4: term] :
                                                                                    ( ( X1 @ id @ X4 @ id )
                                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                             => ( hoaslaminj
                                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                     => ( ( X1 @ X3 @ X4 )
                                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                         => ( hoasinduction_lem3aaa
                                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                          ( ~ ( ~ ( ! [X5: term] :
                                                                      ( ( X1 @ id @ X5 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( X1 @ id @ X3 @ id )
                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                     => ~ induction2lem_gthm )
                                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
                             => ( hoasinduction_lem3
                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                             => ~ ! [X3: subst > term > term] :
                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X1 @ id @ X4 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                         => ~ ! [X3: term] :
                                                ( ( X1 @ id @ X3 @ id )
                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                         => ( hoasinduction_lem2
                           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                             => ~ ! [X4: term,X5: term] :
                                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                                       => ~ ( X1 @ id @ X5 @ id ) )
                                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                         => ~ ( X1 @ id @ X2 @ id ) )
                                     => ~ ( X1 @ id @ X3 @ id ) )
                                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                     => ( termmset_lthm != ( ~ sP33 ) ) )
                 => ~ hoasinduction_lem1 )
             => ~ hoaslamnotap_lthm )
         => ( pushprop_lem1v2_lthm != sP20 ) )
     => ~ hoasapnotvar ),
    introduced(assumption,[]) ).

thf(h168,assumption,
    hoasinduction_lem0 = sP10,
    introduced(assumption,[]) ).

thf(h169,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                                              ( X1
                                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                                        ( X1
                                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                 => ( one
                                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                 => ( id
                                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                                             => ( sh
                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                             => ( hoaslam
                                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                                ! [X3: term] :
                                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                     => ~ sP36 )
                                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                                     => ~ axmap )
                                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                                             => ( shinj
                                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                                 => ( induction2lem
                                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                                 => ~ ! [X4: term] :
                                                                                                                        ( ! [X5: term] :
                                                                                                                            ( ( X1 @ X5 )
                                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                             => ~ ! [X4: term] :
                                                                                                                    ( ( var @ X4 )
                                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                         => ~ axvarshift )
                                                                                     => ( hoasapinj2 != sP26 ) )
                                                                                 => ~ hoasapnotvar_gthm )
                                                                             => ( hoasapinj1
                                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                         => ulamvar1 )
                                                                     => ( induction2lem_lthm
                                                                       != ( ! [X1: term,X2: subst] :
                                                                              ( X1
                                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                         => ( ! [X1: term,X2: subst] :
                                                                                ( X2
                                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                           => ( sP17
                                                                             => ( ! [X1: term > $o,X2: term] :
                                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                                ( ( var @ X3 )
                                                                                               => ( X1 @ X3 ) )
                                                                                           => ~ ! [X3: term,X4: term] :
                                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                                     => ~ ( X1 @ X4 ) )
                                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                       => ~ ! [X3: term] :
                                                                                              ( ( X1 @ X3 )
                                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                                   => ( X1 @ X2 ) )
                                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                ( ~ ( ( X1 @ X4 )
                                                                                                   => ~ ( X1 @ X5 ) )
                                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                           => ~ ! [X4: term] :
                                                                                                  ( ! [X5: term] :
                                                                                                      ( ( X1 @ X5 )
                                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ( var @ X4 )
                                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                                 => ~ hoasinduction_lem3v2_gthm )
                                                             => ~ apnotvar )
                                                         => ~ pushprop_lthm_orig )
                                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                                 => ( hoasinduction_lthm
                                                   != ( ! [X1: term > $o,X2: term] :
                                                          ( ~ ( ~ ( ! [X3: term] :
                                                                      ( ( var @ X3 )
                                                                     => ( X1 @ X3 ) )
                                                                 => ~ ! [X3: term,X4: term] :
                                                                        ( ~ ( ( X1 @ X3 )
                                                                           => ~ ( X1 @ X4 ) )
                                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ! [X4: term] :
                                                                        ( ( X1 @ X4 )
                                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                                         => ( X1 @ X2 ) )
                                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                       => ~ ! [X4: term,X5: term] :
                                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                                               => ~ ( X1 @ id @ X3 @ id ) )
                                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                     => ~ ! [X3: subst > term > term] :
                                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( X1 @ id @ X4 @ id )
                                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( X1 @ id @ X3 @ id )
                                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                         => ~ ! [X3: term] :
                                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                                     => ~ ! [X3: term,X4: term] :
                                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                                 => ~ ! [X3: subst > term > term] :
                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                             => ( hoasinduction_no_psi_cond_lthm
                                               != ( sP10
                                                 => ( ! [X1: term > $o,X2: term] :
                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                    ( ( var @ X3 )
                                                                   => ( X1 @ X3 ) )
                                                               => ~ ! [X3: term,X4: term] :
                                                                      ( ~ ( ( X1 @ X3 )
                                                                         => ~ ( X1 @ X4 ) )
                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                           => ~ ! [X3: term] :
                                                                  ( ! [X4: term] :
                                                                      ( ( X1 @ X4 )
                                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                       => ( X1 @ X2 ) )
                                                   => ( ! [X1: term] :
                                                          ( X1
                                                          = ( sub @ X1 @ id ) )
                                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                           => ~ ! [X5: term] :
                                                                                  ( ( X1 @ id @ X5 @ id )
                                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X2 @ X4 )
                                                                          = ( X1 @ id @ X4 @ id ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X2 @ X4 )
                                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                           => ( X2 @ ( lam @ X3 ) ) )
                                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                                            ( ~ ( ! [X3: term,X4: term] :
                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                               => ~ ! [X3: subst > term > term] :
                                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ( X1 @ id @ X4 @ id )
                                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                         => ( hoaslaminj
                                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                                 => ( ( X1 @ X3 @ X4 )
                                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                     => ( hoasinduction_lem3aaa
                                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                      ( ~ ( ~ ( ! [X5: term] :
                                                                  ( ( X1 @ id @ X5 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( X1 @ id @ X3 @ id )
                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                                 => ~ induction2lem_gthm )
                             => ( hoasinduction_lem3aa_lthm != sP40 ) )
                         => ( hoasinduction_lem3
                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                         => ~ ! [X3: subst > term > term] :
                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X1 @ id @ X4 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                     => ~ ! [X3: term] :
                                            ( ( X1 @ id @ X3 @ id )
                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                     => ( hoasinduction_lem2
                       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                         => ~ ! [X4: term,X5: term] :
                                                ( ~ ( ( X1 @ id @ X4 @ id )
                                                   => ~ ( X1 @ id @ X5 @ id ) )
                                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                     => ~ ( X1 @ id @ X2 @ id ) )
                                 => ~ ( X1 @ id @ X3 @ id ) )
                             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
                 => ( termmset_lthm != ( ~ sP33 ) ) )
             => ~ hoasinduction_lem1 )
         => ~ hoaslamnotap_lthm )
     => ( pushprop_lem1v2_lthm != sP20 ) ),
    introduced(assumption,[]) ).

thf(h170,assumption,
    hoasapnotvar,
    introduced(assumption,[]) ).

thf(h171,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                                          ( X1
                                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                                    ( X1
                                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                             => ( one
                                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                             => ( id
                                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                                         => ( sh
                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                         => ( hoaslam
                                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                            ! [X3: term] :
                                                                                                                                              ( ( X2 @ X3 )
                                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                                 => ~ sP36 )
                                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                                 => ~ axmap )
                                                                                                             => ~ pushprop_lem0_gthm )
                                                                                                         => ( shinj
                                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                                             => ( induction2lem
                                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                             => ~ ! [X4: term] :
                                                                                                                    ( ! [X5: term] :
                                                                                                                        ( ( X1 @ X5 )
                                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                         => ~ ! [X4: term] :
                                                                                                                ( ( var @ X4 )
                                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                     => ~ axvarshift )
                                                                                 => ( hoasapinj2 != sP26 ) )
                                                                             => ~ hoasapnotvar_gthm )
                                                                         => ( hoasapinj1
                                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                     => ulamvar1 )
                                                                 => ( induction2lem_lthm
                                                                   != ( ! [X1: term,X2: subst] :
                                                                          ( X1
                                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                     => ( ! [X1: term,X2: subst] :
                                                                            ( X2
                                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                       => ( sP17
                                                                         => ( ! [X1: term > $o,X2: term] :
                                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                                            ( ( var @ X3 )
                                                                                           => ( X1 @ X3 ) )
                                                                                       => ~ ! [X3: term,X4: term] :
                                                                                              ( ~ ( ( X1 @ X3 )
                                                                                                 => ~ ( X1 @ X4 ) )
                                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                                   => ~ ! [X3: term] :
                                                                                          ( ( X1 @ X3 )
                                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                                               => ( X1 @ X2 ) )
                                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                            ( ~ ( ( X1 @ X4 )
                                                                                               => ~ ( X1 @ X5 ) )
                                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                       => ~ ! [X4: term] :
                                                                                              ( ! [X5: term] :
                                                                                                  ( ( X1 @ X5 )
                                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ( var @ X4 )
                                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                             => ~ hoasinduction_lem3v2_gthm )
                                                         => ~ apnotvar )
                                                     => ~ pushprop_lthm_orig )
                                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                             => ( hoasinduction_lthm
                                               != ( ! [X1: term > $o,X2: term] :
                                                      ( ~ ( ~ ( ! [X3: term] :
                                                                  ( ( var @ X3 )
                                                                 => ( X1 @ X3 ) )
                                                             => ~ ! [X3: term,X4: term] :
                                                                    ( ~ ( ( X1 @ X3 )
                                                                       => ~ ( X1 @ X4 ) )
                                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ! [X4: term] :
                                                                    ( ( X1 @ X4 )
                                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                                     => ( X1 @ X2 ) )
                                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                                   => ~ ! [X4: term,X5: term] :
                                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                               => ~ ( X1 @ id @ X2 @ id ) )
                                                           => ~ ( X1 @ id @ X3 @ id ) )
                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                 => ~ ! [X3: subst > term > term] :
                                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( X1 @ id @ X4 @ id )
                                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( X1 @ id @ X3 @ id )
                                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                     => ~ ! [X3: term] :
                                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                                 => ~ ! [X3: term,X4: term] :
                                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                             => ~ ! [X3: subst > term > term] :
                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X1 @ id @ X4 @ id )
                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                         => ( hoasinduction_no_psi_cond_lthm
                                           != ( sP10
                                             => ( ! [X1: term > $o,X2: term] :
                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                ( ( var @ X3 )
                                                               => ( X1 @ X3 ) )
                                                           => ~ ! [X3: term,X4: term] :
                                                                  ( ~ ( ( X1 @ X3 )
                                                                     => ~ ( X1 @ X4 ) )
                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                       => ~ ! [X3: term] :
                                                              ( ! [X4: term] :
                                                                  ( ( X1 @ X4 )
                                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                   => ( X1 @ X2 ) )
                                               => ( ! [X1: term] :
                                                      ( X1
                                                      = ( sub @ X1 @ id ) )
                                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                       => ~ ! [X5: term] :
                                                                              ( ( X1 @ id @ X5 @ id )
                                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X2 @ X4 )
                                                                      = ( X1 @ id @ X4 @ id ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X2 @ X4 )
                                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                       => ( X2 @ ( lam @ X3 ) ) )
                                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                                        ( ~ ( ! [X3: term,X4: term] :
                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                           => ~ ! [X3: subst > term > term] :
                                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ( X1 @ id @ X4 @ id )
                                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                     => ( hoaslaminj
                                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                                             => ( ( X1 @ X3 @ X4 )
                                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                                 => ( hoasinduction_lem3aaa
                                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                                  ( ~ ( ~ ( ! [X5: term] :
                                                              ( ( X1 @ id @ X5 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ( X1 @ id @ X3 @ id )
                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                             => ~ induction2lem_gthm )
                         => ( hoasinduction_lem3aa_lthm != sP40 ) )
                     => ( hoasinduction_lem3
                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                     => ~ ! [X3: subst > term > term] :
                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X1 @ id @ X4 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                 => ~ ! [X3: term] :
                                        ( ( X1 @ id @ X3 @ id )
                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
                 => ( hoasinduction_lem2
                   != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                     => ~ ! [X4: term,X5: term] :
                                            ( ~ ( ( X1 @ id @ X4 @ id )
                                               => ~ ( X1 @ id @ X5 @ id ) )
                                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                 => ~ ( X1 @ id @ X2 @ id ) )
                             => ~ ( X1 @ id @ X3 @ id ) )
                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
             => ( termmset_lthm != ( ~ sP33 ) ) )
         => ~ hoasinduction_lem1 )
     => ~ hoaslamnotap_lthm ),
    introduced(assumption,[]) ).

thf(h172,assumption,
    pushprop_lem1v2_lthm = sP20,
    introduced(assumption,[]) ).

thf(h173,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                                      ( X1
                                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                                ( X1
                                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                         => ( one
                                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                         => ( id
                                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                                     => ( sh
                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                     => ( hoaslam
                                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                        ! [X3: term] :
                                                                                                                                          ( ( X2 @ X3 )
                                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                             => ~ sP36 )
                                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                                             => ~ axmap )
                                                                                                         => ~ pushprop_lem0_gthm )
                                                                                                     => ( shinj
                                                                                                       != ( ! [X1: term,X2: term] :
                                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                                = ( sub @ X2 @ sh ) )
                                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                                 => ~ hoasinduction_lem1v2 )
                                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                                         => ( induction2lem
                                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                         => ~ ! [X4: term] :
                                                                                                                ( ! [X5: term] :
                                                                                                                    ( ( X1 @ X5 )
                                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                     => ~ ! [X4: term] :
                                                                                                            ( ( var @ X4 )
                                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                                 => ~ axvarshift )
                                                                             => ( hoasapinj2 != sP26 ) )
                                                                         => ~ hoasapnotvar_gthm )
                                                                     => ( hoasapinj1
                                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                             => ( X1 = X2 ) ) ) ) )
                                                                 => ulamvar1 )
                                                             => ( induction2lem_lthm
                                                               != ( ! [X1: term,X2: subst] :
                                                                      ( X1
                                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                                 => ( ! [X1: term,X2: subst] :
                                                                        ( X2
                                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                                   => ( sP17
                                                                     => ( ! [X1: term > $o,X2: term] :
                                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                                        ( ( var @ X3 )
                                                                                       => ( X1 @ X3 ) )
                                                                                   => ~ ! [X3: term,X4: term] :
                                                                                          ( ~ ( ( X1 @ X3 )
                                                                                             => ~ ( X1 @ X4 ) )
                                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                               => ~ ! [X3: term] :
                                                                                      ( ( X1 @ X3 )
                                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                                           => ( X1 @ X2 ) )
                                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                        ( ~ ( ( X1 @ X4 )
                                                                                           => ~ ( X1 @ X5 ) )
                                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                   => ~ ! [X4: term] :
                                                                                          ( ! [X5: term] :
                                                                                              ( ( X1 @ X5 )
                                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ( var @ X4 )
                                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                         => ~ hoasinduction_lem3v2_gthm )
                                                     => ~ apnotvar )
                                                 => ~ pushprop_lthm_orig )
                                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                         => ( hoasinduction_lthm
                                           != ( ! [X1: term > $o,X2: term] :
                                                  ( ~ ( ~ ( ! [X3: term] :
                                                              ( ( var @ X3 )
                                                             => ( X1 @ X3 ) )
                                                         => ~ ! [X3: term,X4: term] :
                                                                ( ~ ( ( X1 @ X3 )
                                                                   => ~ ( X1 @ X4 ) )
                                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ! [X4: term] :
                                                                ( ( X1 @ X4 )
                                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                                 => ( X1 @ X2 ) )
                                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                               => ~ ! [X4: term,X5: term] :
                                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                           => ~ ( X1 @ id @ X2 @ id ) )
                                                       => ~ ( X1 @ id @ X3 @ id ) )
                                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                             => ~ ! [X3: subst > term > term] :
                                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( X1 @ id @ X4 @ id )
                                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( X1 @ id @ X3 @ id )
                                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                                 => ~ ! [X3: term] :
                                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                                       => ( X1 @ id @ X3 @ id ) ) )
                                                             => ~ ! [X3: term,X4: term] :
                                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                         => ~ ! [X3: subst > term > term] :
                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X1 @ id @ X4 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                     => ( hoasinduction_no_psi_cond_lthm
                                       != ( sP10
                                         => ( ! [X1: term > $o,X2: term] :
                                                ( ~ ( ~ ( ! [X3: term] :
                                                            ( ( var @ X3 )
                                                           => ( X1 @ X3 ) )
                                                       => ~ ! [X3: term,X4: term] :
                                                              ( ~ ( ( X1 @ X3 )
                                                                 => ~ ( X1 @ X4 ) )
                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                   => ~ ! [X3: term] :
                                                          ( ! [X4: term] :
                                                              ( ( X1 @ X4 )
                                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                               => ( X1 @ X2 ) )
                                           => ( ! [X1: term] :
                                                  ( X1
                                                  = ( sub @ X1 @ id ) )
                                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                                   => ~ ! [X5: term] :
                                                                          ( ( X1 @ id @ X5 @ id )
                                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X2 @ X4 )
                                                                  = ( X1 @ id @ X4 @ id ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X2 @ X4 )
                                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                                   => ( X2 @ ( lam @ X3 ) ) )
                                               => ! [X1: subst > term > subst > $o,X2: term] :
                                                    ( ~ ( ! [X3: term,X4: term] :
                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                       => ~ ! [X3: subst > term > term] :
                                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ( X1 @ id @ X4 @ id )
                                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                                 => ( hoaslaminj
                                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                             => ( ( lam @ ( X1 @ sh @ one ) )
                                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                                         => ( ( X1 @ X3 @ X4 )
                                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
                             => ( hoasinduction_lem3aaa
                               != ( ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                                              ( ~ ( ~ ( ! [X5: term] :
                                                          ( ( X1 @ id @ X5 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                         => ~ ! [X3: term] :
                                                ( ( X1 @ id @ X3 @ id )
                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                         => ~ induction2lem_gthm )
                     => ( hoasinduction_lem3aa_lthm != sP40 ) )
                 => ( hoasinduction_lem3
                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                 => ~ ! [X3: subst > term > term] :
                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X1 @ id @ X4 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                             => ~ ! [X3: term] :
                                    ( ( X1 @ id @ X3 @ id )
                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
             => ( hoasinduction_lem2
               != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                 => ~ ! [X4: term,X5: term] :
                                        ( ~ ( ( X1 @ id @ X4 @ id )
                                           => ~ ( X1 @ id @ X5 @ id ) )
                                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                             => ~ ( X1 @ id @ X2 @ id ) )
                         => ~ ( X1 @ id @ X3 @ id ) )
                     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
         => ( termmset_lthm != ( ~ sP33 ) ) )
     => ~ hoasinduction_lem1 ),
    introduced(assumption,[]) ).

thf(h174,assumption,
    hoaslamnotap_lthm,
    introduced(assumption,[]) ).

thf(h175,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                                  ( X1
                                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                                            ( X1
                                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                     => ( one
                                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                     => ( id
                                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                                 => ( sh
                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                 => ( hoaslam
                                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                    ! [X3: term] :
                                                                                                                                      ( ( X2 @ X3 )
                                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                         => ~ sP36 )
                                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                                             => ~ pushprop_lem1_gthm )
                                                                                                         => ~ axmap )
                                                                                                     => ~ pushprop_lem0_gthm )
                                                                                                 => ( shinj
                                                                                                   != ( ! [X1: term,X2: term] :
                                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                                            = ( sub @ X2 @ sh ) )
                                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                                             => ~ hoasinduction_lem1v2 )
                                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                                     => ( induction2lem
                                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                                             => ~ ( X1 @ X5 ) )
                                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                     => ~ ! [X4: term] :
                                                                                                            ( ! [X5: term] :
                                                                                                                ( ( X1 @ X5 )
                                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                                 => ~ ! [X4: term] :
                                                                                                        ( ( var @ X4 )
                                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                             => ~ axvarshift )
                                                                         => ( hoasapinj2 != sP26 ) )
                                                                     => ~ hoasapnotvar_gthm )
                                                                 => ( hoasapinj1
                                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                         => ( X1 = X2 ) ) ) ) )
                                                             => ulamvar1 )
                                                         => ( induction2lem_lthm
                                                           != ( ! [X1: term,X2: subst] :
                                                                  ( X1
                                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                             => ( ! [X1: term,X2: subst] :
                                                                    ( X2
                                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                               => ( sP17
                                                                 => ( ! [X1: term > $o,X2: term] :
                                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                                    ( ( var @ X3 )
                                                                                   => ( X1 @ X3 ) )
                                                                               => ~ ! [X3: term,X4: term] :
                                                                                      ( ~ ( ( X1 @ X3 )
                                                                                         => ~ ( X1 @ X4 ) )
                                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                           => ~ ! [X3: term] :
                                                                                  ( ( X1 @ X3 )
                                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                                       => ( X1 @ X2 ) )
                                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                    ( ~ ( ( X1 @ X4 )
                                                                                       => ~ ( X1 @ X5 ) )
                                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                               => ~ ! [X4: term] :
                                                                                      ( ! [X5: term] :
                                                                                          ( ( X1 @ X5 )
                                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ( var @ X4 )
                                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                     => ~ hoasinduction_lem3v2_gthm )
                                                 => ~ apnotvar )
                                             => ~ pushprop_lthm_orig )
                                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                     => ( hoasinduction_lthm
                                       != ( ! [X1: term > $o,X2: term] :
                                              ( ~ ( ~ ( ! [X3: term] :
                                                          ( ( var @ X3 )
                                                         => ( X1 @ X3 ) )
                                                     => ~ ! [X3: term,X4: term] :
                                                            ( ~ ( ( X1 @ X3 )
                                                               => ~ ( X1 @ X4 ) )
                                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ! [X4: term] :
                                                            ( ( X1 @ X4 )
                                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                       => ( X1 @ ( lam @ X3 ) ) ) )
                                             => ( X1 @ X2 ) )
                                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                           => ~ ! [X4: term,X5: term] :
                                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                       => ~ ( X1 @ id @ X2 @ id ) )
                                                   => ~ ( X1 @ id @ X3 @ id ) )
                                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                         => ~ ! [X3: subst > term > term] :
                                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( X1 @ id @ X4 @ id )
                                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( X1 @ id @ X3 @ id )
                                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                             => ! [X1: subst > term > subst > $o,X2: term] :
                                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                             => ~ ! [X3: term] :
                                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                                   => ( X1 @ id @ X3 @ id ) ) )
                                                         => ~ ! [X3: term,X4: term] :
                                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                     => ~ ! [X3: subst > term > term] :
                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X1 @ id @ X4 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                                 => ( hoasinduction_no_psi_cond_lthm
                                   != ( sP10
                                     => ( ! [X1: term > $o,X2: term] :
                                            ( ~ ( ~ ( ! [X3: term] :
                                                        ( ( var @ X3 )
                                                       => ( X1 @ X3 ) )
                                                   => ~ ! [X3: term,X4: term] :
                                                          ( ~ ( ( X1 @ X3 )
                                                             => ~ ( X1 @ X4 ) )
                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                               => ~ ! [X3: term] :
                                                      ( ! [X4: term] :
                                                          ( ( X1 @ X4 )
                                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                           => ( X1 @ X2 ) )
                                       => ( ! [X1: term] :
                                              ( X1
                                              = ( sub @ X1 @ id ) )
                                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                               => ~ ! [X5: term] :
                                                                      ( ( X1 @ id @ X5 @ id )
                                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X2 @ X4 )
                                                              = ( X1 @ id @ X4 @ id ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X2 @ X4 )
                                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                               => ( X2 @ ( lam @ X3 ) ) )
                                           => ! [X1: subst > term > subst > $o,X2: term] :
                                                ( ~ ( ! [X3: term,X4: term] :
                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                                   => ~ ! [X3: subst > term > term] :
                                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ( X1 @ id @ X4 @ id )
                                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                             => ( hoaslaminj
                               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                         => ( ( lam @ ( X1 @ sh @ one ) )
                                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                                     => ( ( X1 @ X3 @ X4 )
                                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
                         => ( hoasinduction_lem3aaa
                           != ( ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                                          ( ~ ( ~ ( ! [X5: term] :
                                                      ( ( X1 @ id @ X5 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                     => ~ ! [X3: term] :
                                            ( ( X1 @ id @ X3 @ id )
                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                     => ~ induction2lem_gthm )
                 => ( hoasinduction_lem3aa_lthm != sP40 ) )
             => ( hoasinduction_lem3
               != ( ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                             => ~ ! [X3: subst > term > term] :
                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X1 @ id @ X4 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                         => ~ ! [X3: term] :
                                ( ( X1 @ id @ X3 @ id )
                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
         => ( hoasinduction_lem2
           != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                  ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                      ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                     => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                 => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                        ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                       => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                             => ~ ! [X4: term,X5: term] :
                                    ( ~ ( ( X1 @ id @ X4 @ id )
                                       => ~ ( X1 @ id @ X5 @ id ) )
                                   => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                         => ~ ( X1 @ id @ X2 @ id ) )
                     => ~ ( X1 @ id @ X3 @ id ) )
                 => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) )
     => ( termmset_lthm != ( ~ sP33 ) ) ),
    introduced(assumption,[]) ).

thf(h176,assumption,
    hoasinduction_lem1,
    introduced(assumption,[]) ).

thf(h177,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                                              ( X1
                                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                                        ( X1
                                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                 => ( one
                                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                 => ( id
                                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                                             => ( sh
                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                             => ( hoaslam
                                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                                ! [X3: term] :
                                                                                                                                  ( ( X2 @ X3 )
                                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                     => ~ sP36 )
                                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                                         => ~ pushprop_lem1_gthm )
                                                                                                     => ~ axmap )
                                                                                                 => ~ pushprop_lem0_gthm )
                                                                                             => ( shinj
                                                                                               != ( ! [X1: term,X2: term] :
                                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                                        = ( sub @ X2 @ sh ) )
                                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                                         => ~ hoasinduction_lem1v2 )
                                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                                 => ( induction2lem
                                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                                         => ~ ( X1 @ X5 ) )
                                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                                 => ~ ! [X4: term] :
                                                                                                        ( ! [X5: term] :
                                                                                                            ( ( X1 @ X5 )
                                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                             => ~ ! [X4: term] :
                                                                                                    ( ( var @ X4 )
                                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                         => ~ axvarshift )
                                                                     => ( hoasapinj2 != sP26 ) )
                                                                 => ~ hoasapnotvar_gthm )
                                                             => ( hoasapinj1
                                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                     => ( X1 = X2 ) ) ) ) )
                                                         => ulamvar1 )
                                                     => ( induction2lem_lthm
                                                       != ( ! [X1: term,X2: subst] :
                                                              ( X1
                                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                         => ( ! [X1: term,X2: subst] :
                                                                ( X2
                                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                           => ( sP17
                                                             => ( ! [X1: term > $o,X2: term] :
                                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                                ( ( var @ X3 )
                                                                               => ( X1 @ X3 ) )
                                                                           => ~ ! [X3: term,X4: term] :
                                                                                  ( ~ ( ( X1 @ X3 )
                                                                                     => ~ ( X1 @ X4 ) )
                                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                       => ~ ! [X3: term] :
                                                                              ( ( X1 @ X3 )
                                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                                   => ( X1 @ X2 ) )
                                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                ( ~ ( ( X1 @ X4 )
                                                                                   => ~ ( X1 @ X5 ) )
                                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                           => ~ ! [X4: term] :
                                                                                  ( ! [X5: term] :
                                                                                      ( ( X1 @ X5 )
                                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ( var @ X4 )
                                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                                 => ~ hoasinduction_lem3v2_gthm )
                                             => ~ apnotvar )
                                         => ~ pushprop_lthm_orig )
                                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                                 => ( hoasinduction_lthm
                                   != ( ! [X1: term > $o,X2: term] :
                                          ( ~ ( ~ ( ! [X3: term] :
                                                      ( ( var @ X3 )
                                                     => ( X1 @ X3 ) )
                                                 => ~ ! [X3: term,X4: term] :
                                                        ( ~ ( ( X1 @ X3 )
                                                           => ~ ( X1 @ X4 ) )
                                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ! [X4: term] :
                                                        ( ( X1 @ X4 )
                                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                   => ( X1 @ ( lam @ X3 ) ) ) )
                                         => ( X1 @ X2 ) )
                                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                       => ~ ! [X4: term,X5: term] :
                                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                                   => ~ ( X1 @ id @ X2 @ id ) )
                                               => ~ ( X1 @ id @ X3 @ id ) )
                                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                     => ~ ! [X3: subst > term > term] :
                                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( X1 @ id @ X4 @ id )
                                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( X1 @ id @ X3 @ id )
                                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                         => ! [X1: subst > term > subst > $o,X2: term] :
                                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                         => ~ ! [X3: term] :
                                                                ( ( var @ ( sub @ X3 @ id ) )
                                                               => ( X1 @ id @ X3 @ id ) ) )
                                                     => ~ ! [X3: term,X4: term] :
                                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                                               => ~ ( X1 @ id @ X4 @ id ) )
                                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                                 => ~ ! [X3: subst > term > term] :
                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X1 @ id @ X4 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                             => ( hoasinduction_no_psi_cond_lthm
                               != ( sP10
                                 => ( ! [X1: term > $o,X2: term] :
                                        ( ~ ( ~ ( ! [X3: term] :
                                                    ( ( var @ X3 )
                                                   => ( X1 @ X3 ) )
                                               => ~ ! [X3: term,X4: term] :
                                                      ( ~ ( ( X1 @ X3 )
                                                         => ~ ( X1 @ X4 ) )
                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                           => ~ ! [X3: term] :
                                                  ( ! [X4: term] :
                                                      ( ( X1 @ X4 )
                                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                       => ( X1 @ X2 ) )
                                   => ( ! [X1: term] :
                                          ( X1
                                          = ( sub @ X1 @ id ) )
                                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                           => ~ ! [X5: term] :
                                                                  ( ( X1 @ id @ X5 @ id )
                                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X2 @ X4 )
                                                          = ( X1 @ id @ X4 @ id ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X2 @ X4 )
                                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                           => ( X2 @ ( lam @ X3 ) ) )
                                       => ! [X1: subst > term > subst > $o,X2: term] :
                                            ( ~ ( ! [X3: term,X4: term] :
                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                               => ~ ! [X3: subst > term > term] :
                                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                         => ~ ! [X4: term] :
                                                                ( ( X1 @ id @ X4 @ id )
                                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                         => ( hoaslaminj
                           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                     => ( ( lam @ ( X1 @ sh @ one ) )
                                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                                 => ( ( X1 @ X3 @ X4 )
                                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
                     => ( hoasinduction_lem3aaa
                       != ( ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ! [X3: subst > term > term,X4: term] :
                                      ( ~ ( ~ ( ! [X5: term] :
                                                  ( ( X1 @ id @ X5 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                                 => ~ ! [X3: term] :
                                        ( ( X1 @ id @ X3 @ id )
                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
                 => ~ induction2lem_gthm )
             => ( hoasinduction_lem3aa_lthm != sP40 ) )
         => ( hoasinduction_lem3
           != ( ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: subst > term > term] :
                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X1 @ id @ X4 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                     => ~ ! [X3: term] :
                            ( ( X1 @ id @ X3 @ id )
                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) )
     => ( hoasinduction_lem2
       != ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                  ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                 => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                             => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                    ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                   => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                         => ~ ! [X4: term,X5: term] :
                                ( ~ ( ( X1 @ id @ X4 @ id )
                                   => ~ ( X1 @ id @ X5 @ id ) )
                               => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                     => ~ ( X1 @ id @ X2 @ id ) )
                 => ~ ( X1 @ id @ X3 @ id ) )
             => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h178,assumption,
    ( termmset_lthm = ( ~ sP33 ) ),
    introduced(assumption,[]) ).

thf(h179,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                                          ( X1
                                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                                    ( X1
                                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                             => ( one
                                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                             => ( id
                                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                                         => ( sh
                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                         => ( hoaslam
                                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                            ! [X3: term] :
                                                                                                                              ( ( X2 @ X3 )
                                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                                 => ~ sP36 )
                                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                                     => ~ pushprop_lem1_gthm )
                                                                                                 => ~ axmap )
                                                                                             => ~ pushprop_lem0_gthm )
                                                                                         => ( shinj
                                                                                           != ( ! [X1: term,X2: term] :
                                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                                    = ( sub @ X2 @ sh ) )
                                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                                     => ~ hoasinduction_lem1v2 )
                                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                                             => ( induction2lem
                                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                                     => ~ ( X1 @ X5 ) )
                                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                             => ~ ! [X4: term] :
                                                                                                    ( ! [X5: term] :
                                                                                                        ( ( X1 @ X5 )
                                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                         => ~ ! [X4: term] :
                                                                                                ( ( var @ X4 )
                                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                     => ~ axvarshift )
                                                                 => ( hoasapinj2 != sP26 ) )
                                                             => ~ hoasapnotvar_gthm )
                                                         => ( hoasapinj1
                                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                                 => ( X1 = X2 ) ) ) ) )
                                                     => ulamvar1 )
                                                 => ( induction2lem_lthm
                                                   != ( ! [X1: term,X2: subst] :
                                                          ( X1
                                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                     => ( ! [X1: term,X2: subst] :
                                                            ( X2
                                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                       => ( sP17
                                                         => ( ! [X1: term > $o,X2: term] :
                                                                ( ~ ( ~ ( ! [X3: term] :
                                                                            ( ( var @ X3 )
                                                                           => ( X1 @ X3 ) )
                                                                       => ~ ! [X3: term,X4: term] :
                                                                              ( ~ ( ( X1 @ X3 )
                                                                                 => ~ ( X1 @ X4 ) )
                                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                                   => ~ ! [X3: term] :
                                                                          ( ( X1 @ X3 )
                                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                                               => ( X1 @ X2 ) )
                                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                            ( ~ ( ( X1 @ X4 )
                                                                               => ~ ( X1 @ X5 ) )
                                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                       => ~ ! [X4: term] :
                                                                              ( ! [X5: term] :
                                                                                  ( ( X1 @ X5 )
                                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ( var @ X4 )
                                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                             => ~ hoasinduction_lem3v2_gthm )
                                         => ~ apnotvar )
                                     => ~ pushprop_lthm_orig )
                                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                             => ( hoasinduction_lthm
                               != ( ! [X1: term > $o,X2: term] :
                                      ( ~ ( ~ ( ! [X3: term] :
                                                  ( ( var @ X3 )
                                                 => ( X1 @ X3 ) )
                                             => ~ ! [X3: term,X4: term] :
                                                    ( ~ ( ( X1 @ X3 )
                                                       => ~ ( X1 @ X4 ) )
                                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                         => ~ ! [X3: term] :
                                                ( ! [X4: term] :
                                                    ( ( X1 @ X4 )
                                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                               => ( X1 @ ( lam @ X3 ) ) ) )
                                     => ( X1 @ X2 ) )
                                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                                   => ~ ! [X4: term,X5: term] :
                                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                                             => ~ ( X1 @ id @ X5 @ id ) )
                                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                               => ~ ( X1 @ id @ X2 @ id ) )
                                           => ~ ( X1 @ id @ X3 @ id ) )
                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                 => ~ ! [X3: subst > term > term] :
                                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( X1 @ id @ X4 @ id )
                                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ( X1 @ id @ X3 @ id )
                                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                     => ! [X1: subst > term > subst > $o,X2: term] :
                                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                     => ~ ! [X3: term] :
                                                            ( ( var @ ( sub @ X3 @ id ) )
                                                           => ( X1 @ id @ X3 @ id ) ) )
                                                 => ~ ! [X3: term,X4: term] :
                                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                                           => ~ ( X1 @ id @ X4 @ id ) )
                                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                             => ~ ! [X3: subst > term > term] :
                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X1 @ id @ X4 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                         => ( hoasinduction_no_psi_cond_lthm
                           != ( sP10
                             => ( ! [X1: term > $o,X2: term] :
                                    ( ~ ( ~ ( ! [X3: term] :
                                                ( ( var @ X3 )
                                               => ( X1 @ X3 ) )
                                           => ~ ! [X3: term,X4: term] :
                                                  ( ~ ( ( X1 @ X3 )
                                                     => ~ ( X1 @ X4 ) )
                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                       => ~ ! [X3: term] :
                                              ( ! [X4: term] :
                                                  ( ( X1 @ X4 )
                                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                   => ( X1 @ X2 ) )
                               => ( ! [X1: term] :
                                      ( X1
                                      = ( sub @ X1 @ id ) )
                                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                       => ~ ! [X5: term] :
                                                              ( ( X1 @ id @ X5 @ id )
                                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X2 @ X4 )
                                                      = ( X1 @ id @ X4 @ id ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X2 @ X4 )
                                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                       => ( X2 @ ( lam @ X3 ) ) )
                                   => ! [X1: subst > term > subst > $o,X2: term] :
                                        ( ~ ( ! [X3: term,X4: term] :
                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                           => ~ ! [X3: subst > term > term] :
                                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                     => ~ ! [X4: term] :
                                                            ( ( X1 @ id @ X4 @ id )
                                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                     => ( hoaslaminj
                       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                                 => ( ( lam @ ( X1 @ sh @ one ) )
                                   != ( lam @ ( X2 @ sh @ one ) ) ) )
                             => ( ( X1 @ X3 @ X4 )
                                = ( X2 @ X3 @ X4 ) ) ) ) ) )
                 => ( hoasinduction_lem3aaa
                   != ( ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ! [X3: subst > term > term,X4: term] :
                                  ( ~ ( ~ ( ! [X5: term] :
                                              ( ( X1 @ id @ X5 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                     => ~ ! [X5: subst,X6: term,X7: subst] :
                                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                             => ~ ! [X3: term] :
                                    ( ( X1 @ id @ X3 @ id )
                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
             => ~ induction2lem_gthm )
         => ( hoasinduction_lem3aa_lthm != sP40 ) )
     => ( hoasinduction_lem3
       != ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                     => ~ ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ id @ X3 @ id )
                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
             => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h180,assumption,
    ( hoasinduction_lem2
    = ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                     => ~ ! [X4: term,X5: term] :
                            ( ~ ( ( X1 @ id @ X4 @ id )
                               => ~ ( X1 @ id @ X5 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                 => ~ ( X1 @ id @ X2 @ id ) )
             => ~ ( X1 @ id @ X3 @ id ) )
         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h181,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                                      ( X1
                                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                                ( X1
                                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                         => ( one
                                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                         => ( id
                                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                                     => ( sh
                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                     => ( hoaslam
                                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                        ! [X3: term] :
                                                                                                                          ( ( X2 @ X3 )
                                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                             => ~ sP36 )
                                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                                 => ~ pushprop_lem1_gthm )
                                                                                             => ~ axmap )
                                                                                         => ~ pushprop_lem0_gthm )
                                                                                     => ( shinj
                                                                                       != ( ! [X1: term,X2: term] :
                                                                                              ( ( ( sub @ X1 @ sh )
                                                                                                = ( sub @ X2 @ sh ) )
                                                                                             => ( X1 = X2 ) ) ) ) )
                                                                                 => ~ hoasinduction_lem1v2 )
                                                                             => ~ hoasinduction_lem1v2_gthm )
                                                                         => ( induction2lem
                                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                              ( ~ ( ( X1 @ X4 )
                                                                                                 => ~ ( X1 @ X5 ) )
                                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                         => ~ ! [X4: term] :
                                                                                                ( ! [X5: term] :
                                                                                                    ( ( X1 @ X5 )
                                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                     => ~ ! [X4: term] :
                                                                                            ( ( var @ X4 )
                                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                                 => ~ axvarshift )
                                                             => ( hoasapinj2 != sP26 ) )
                                                         => ~ hoasapnotvar_gthm )
                                                     => ( hoasapinj1
                                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                             => ( X1 = X2 ) ) ) ) )
                                                 => ulamvar1 )
                                             => ( induction2lem_lthm
                                               != ( ! [X1: term,X2: subst] :
                                                      ( X1
                                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                                 => ( ! [X1: term,X2: subst] :
                                                        ( X2
                                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                                   => ( sP17
                                                     => ( ! [X1: term > $o,X2: term] :
                                                            ( ~ ( ~ ( ! [X3: term] :
                                                                        ( ( var @ X3 )
                                                                       => ( X1 @ X3 ) )
                                                                   => ~ ! [X3: term,X4: term] :
                                                                          ( ~ ( ( X1 @ X3 )
                                                                             => ~ ( X1 @ X4 ) )
                                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                               => ~ ! [X3: term] :
                                                                      ( ( X1 @ X3 )
                                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                                           => ( X1 @ X2 ) )
                                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                        ( ~ ( ( X1 @ X4 )
                                                                           => ~ ( X1 @ X5 ) )
                                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                   => ~ ! [X4: term] :
                                                                          ( ! [X5: term] :
                                                                              ( ( X1 @ X5 )
                                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ( var @ X4 )
                                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                         => ~ hoasinduction_lem3v2_gthm )
                                     => ~ apnotvar )
                                 => ~ pushprop_lthm_orig )
                             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                         => ( hoasinduction_lthm
                           != ( ! [X1: term > $o,X2: term] :
                                  ( ~ ( ~ ( ! [X3: term] :
                                              ( ( var @ X3 )
                                             => ( X1 @ X3 ) )
                                         => ~ ! [X3: term,X4: term] :
                                                ( ~ ( ( X1 @ X3 )
                                                   => ~ ( X1 @ X4 ) )
                                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                     => ~ ! [X3: term] :
                                            ( ! [X4: term] :
                                                ( ( X1 @ X4 )
                                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                           => ( X1 @ ( lam @ X3 ) ) ) )
                                 => ( X1 @ X2 ) )
                             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                               => ~ ! [X4: term,X5: term] :
                                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                                         => ~ ( X1 @ id @ X5 @ id ) )
                                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                           => ~ ( X1 @ id @ X2 @ id ) )
                                       => ~ ( X1 @ id @ X3 @ id ) )
                                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                               => ( ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                             => ~ ! [X3: subst > term > term] :
                                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( X1 @ id @ X4 @ id )
                                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                         => ~ ! [X3: term] :
                                                ( ( X1 @ id @ X3 @ id )
                                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                                 => ! [X1: subst > term > subst > $o,X2: term] :
                                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                                 => ~ ! [X3: term] :
                                                        ( ( var @ ( sub @ X3 @ id ) )
                                                       => ( X1 @ id @ X3 @ id ) ) )
                                             => ~ ! [X3: term,X4: term] :
                                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                                       => ~ ( X1 @ id @ X4 @ id ) )
                                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                         => ~ ! [X3: subst > term > term] :
                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X1 @ id @ X4 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                     => ( hoasinduction_no_psi_cond_lthm
                       != ( sP10
                         => ( ! [X1: term > $o,X2: term] :
                                ( ~ ( ~ ( ! [X3: term] :
                                            ( ( var @ X3 )
                                           => ( X1 @ X3 ) )
                                       => ~ ! [X3: term,X4: term] :
                                              ( ~ ( ( X1 @ X3 )
                                                 => ~ ( X1 @ X4 ) )
                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                   => ~ ! [X3: term] :
                                          ( ! [X4: term] :
                                              ( ( X1 @ X4 )
                                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                         => ( X1 @ ( lam @ X3 ) ) ) )
                               => ( X1 @ X2 ) )
                           => ( ! [X1: term] :
                                  ( X1
                                  = ( sub @ X1 @ id ) )
                             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                                   => ~ ! [X5: term] :
                                                          ( ( X1 @ id @ X5 @ id )
                                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X2 @ X4 )
                                                  = ( X1 @ id @ X4 @ id ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X2 @ X4 )
                                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                                   => ( X2 @ ( lam @ X3 ) ) )
                               => ! [X1: subst > term > subst > $o,X2: term] :
                                    ( ~ ( ! [X3: term,X4: term] :
                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                               => ~ ( X1 @ id @ X4 @ id ) )
                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                       => ~ ! [X3: subst > term > term] :
                                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                 => ~ ! [X4: term] :
                                                        ( ( X1 @ id @ X4 @ id )
                                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
                 => ( hoaslaminj
                   != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                             => ( ( lam @ ( X1 @ sh @ one ) )
                               != ( lam @ ( X2 @ sh @ one ) ) ) )
                         => ( ( X1 @ X3 @ X4 )
                            = ( X2 @ X3 @ X4 ) ) ) ) ) )
             => ( hoasinduction_lem3aaa
               != ( ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ! [X3: subst > term > term,X4: term] :
                              ( ~ ( ~ ( ! [X5: term] :
                                          ( ( X1 @ id @ X5 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                                 => ~ ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( X1 @ id @ X3 @ id )
                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
         => ~ induction2lem_gthm )
     => ( hoasinduction_lem3aa_lthm != sP40 ) ),
    introduced(assumption,[]) ).

thf(h182,assumption,
    ( hoasinduction_lem3
    = ( ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ~ ! [X3: term] :
                    ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h183,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                                  ( X1
                                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                                            ( X1
                                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                     => ( one
                                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                     => ( id
                                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                                 => ( sh
                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                 => ( hoaslam
                                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                    ! [X3: term] :
                                                                                                                      ( ( X2 @ X3 )
                                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                         => ~ sP36 )
                                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                                             => ~ pushprop_lem1_gthm )
                                                                                         => ~ axmap )
                                                                                     => ~ pushprop_lem0_gthm )
                                                                                 => ( shinj
                                                                                   != ( ! [X1: term,X2: term] :
                                                                                          ( ( ( sub @ X1 @ sh )
                                                                                            = ( sub @ X2 @ sh ) )
                                                                                         => ( X1 = X2 ) ) ) ) )
                                                                             => ~ hoasinduction_lem1v2 )
                                                                         => ~ hoasinduction_lem1v2_gthm )
                                                                     => ( induction2lem
                                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                          ( ~ ( ( X1 @ X4 )
                                                                                             => ~ ( X1 @ X5 ) )
                                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                     => ~ ! [X4: term] :
                                                                                            ( ! [X5: term] :
                                                                                                ( ( X1 @ X5 )
                                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                                 => ~ ! [X4: term] :
                                                                                        ( ( var @ X4 )
                                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                                             => ~ axvarshift )
                                                         => ( hoasapinj2 != sP26 ) )
                                                     => ~ hoasapnotvar_gthm )
                                                 => ( hoasapinj1
                                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                         => ( X1 = X2 ) ) ) ) )
                                             => ulamvar1 )
                                         => ( induction2lem_lthm
                                           != ( ! [X1: term,X2: subst] :
                                                  ( X1
                                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                             => ( ! [X1: term,X2: subst] :
                                                    ( X2
                                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                               => ( sP17
                                                 => ( ! [X1: term > $o,X2: term] :
                                                        ( ~ ( ~ ( ! [X3: term] :
                                                                    ( ( var @ X3 )
                                                                   => ( X1 @ X3 ) )
                                                               => ~ ! [X3: term,X4: term] :
                                                                      ( ~ ( ( X1 @ X3 )
                                                                         => ~ ( X1 @ X4 ) )
                                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                           => ~ ! [X3: term] :
                                                                  ( ( X1 @ X3 )
                                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                                       => ( X1 @ X2 ) )
                                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                    ( ~ ( ( X1 @ X4 )
                                                                       => ~ ( X1 @ X5 ) )
                                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                               => ~ ! [X4: term] :
                                                                      ( ! [X5: term] :
                                                                          ( ( X1 @ X5 )
                                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ( var @ X4 )
                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                     => ~ hoasinduction_lem3v2_gthm )
                                 => ~ apnotvar )
                             => ~ pushprop_lthm_orig )
                         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                     => ( hoasinduction_lthm
                       != ( ! [X1: term > $o,X2: term] :
                              ( ~ ( ~ ( ! [X3: term] :
                                          ( ( var @ X3 )
                                         => ( X1 @ X3 ) )
                                     => ~ ! [X3: term,X4: term] :
                                            ( ~ ( ( X1 @ X3 )
                                               => ~ ( X1 @ X4 ) )
                                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                 => ~ ! [X3: term] :
                                        ( ! [X4: term] :
                                            ( ( X1 @ X4 )
                                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                       => ( X1 @ ( lam @ X3 ) ) ) )
                             => ( X1 @ X2 ) )
                         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                           => ~ ! [X4: term,X5: term] :
                                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                                     => ~ ( X1 @ id @ X5 @ id ) )
                                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                       => ~ ( X1 @ id @ X2 @ id ) )
                                   => ~ ( X1 @ id @ X3 @ id ) )
                               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                           => ( ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                         => ~ ! [X3: subst > term > term] :
                                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( X1 @ id @ X4 @ id )
                                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                     => ~ ! [X3: term] :
                                            ( ( X1 @ id @ X3 @ id )
                                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                             => ! [X1: subst > term > subst > $o,X2: term] :
                                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                             => ~ ! [X3: term] :
                                                    ( ( var @ ( sub @ X3 @ id ) )
                                                   => ( X1 @ id @ X3 @ id ) ) )
                                         => ~ ! [X3: term,X4: term] :
                                                ( ~ ( ( X1 @ id @ X3 @ id )
                                                   => ~ ( X1 @ id @ X4 @ id ) )
                                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                     => ~ ! [X3: subst > term > term] :
                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X1 @ id @ X4 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
                 => ( hoasinduction_no_psi_cond_lthm
                   != ( sP10
                     => ( ! [X1: term > $o,X2: term] :
                            ( ~ ( ~ ( ! [X3: term] :
                                        ( ( var @ X3 )
                                       => ( X1 @ X3 ) )
                                   => ~ ! [X3: term,X4: term] :
                                          ( ~ ( ( X1 @ X3 )
                                             => ~ ( X1 @ X4 ) )
                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                               => ~ ! [X3: term] :
                                      ( ! [X4: term] :
                                          ( ( X1 @ X4 )
                                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                     => ( X1 @ ( lam @ X3 ) ) ) )
                           => ( X1 @ X2 ) )
                       => ( ! [X1: term] :
                              ( X1
                              = ( sub @ X1 @ id ) )
                         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                                ( ~ ( ~ ( ! [X4: subst > term > term] :
                                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                               => ~ ! [X5: term] :
                                                      ( ( X1 @ id @ X5 @ id )
                                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                       => ~ ! [X4: term] :
                                              ( ( X2 @ X4 )
                                              = ( X1 @ id @ X4 @ id ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X2 @ X4 )
                                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                               => ( X2 @ ( lam @ X3 ) ) )
                           => ! [X1: subst > term > subst > $o,X2: term] :
                                ( ~ ( ! [X3: term,X4: term] :
                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                           => ~ ( X1 @ id @ X4 @ id ) )
                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                                   => ~ ! [X3: subst > term > term] :
                                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                             => ~ ! [X4: term] :
                                                    ( ( X1 @ id @ X4 @ id )
                                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
             => ( hoaslaminj
               != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                         => ( ( lam @ ( X1 @ sh @ one ) )
                           != ( lam @ ( X2 @ sh @ one ) ) ) )
                     => ( ( X1 @ X3 @ X4 )
                        = ( X2 @ X3 @ X4 ) ) ) ) ) )
         => ( hoasinduction_lem3aaa
           != ( ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ! [X3: subst > term > term,X4: term] :
                          ( ~ ( ~ ( ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                             => ~ ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                    = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                                = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                     => ~ ! [X3: term] :
                            ( ( X1 @ id @ X3 @ id )
                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) )
     => ~ induction2lem_gthm ),
    introduced(assumption,[]) ).

thf(h184,assumption,
    hoasinduction_lem3aa_lthm = sP40,
    introduced(assumption,[]) ).

thf(h185,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                                              ( X1
                                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                                        ( X1
                                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                 => ( one
                                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                 => ( id
                                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                                             => ( sh
                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                             => ( hoaslam
                                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                                ! [X3: term] :
                                                                                                                  ( ( X2 @ X3 )
                                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                     => ~ sP36 )
                                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                                         => ~ pushprop_lem1_gthm )
                                                                                     => ~ axmap )
                                                                                 => ~ pushprop_lem0_gthm )
                                                                             => ( shinj
                                                                               != ( ! [X1: term,X2: term] :
                                                                                      ( ( ( sub @ X1 @ sh )
                                                                                        = ( sub @ X2 @ sh ) )
                                                                                     => ( X1 = X2 ) ) ) ) )
                                                                         => ~ hoasinduction_lem1v2 )
                                                                     => ~ hoasinduction_lem1v2_gthm )
                                                                 => ( induction2lem
                                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                      ( ~ ( ( X1 @ X4 )
                                                                                         => ~ ( X1 @ X5 ) )
                                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                                 => ~ ! [X4: term] :
                                                                                        ( ! [X5: term] :
                                                                                            ( ( X1 @ X5 )
                                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                                             => ~ ! [X4: term] :
                                                                                    ( ( var @ X4 )
                                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                                         => ~ axvarshift )
                                                     => ( hoasapinj2 != sP26 ) )
                                                 => ~ hoasapnotvar_gthm )
                                             => ( hoasapinj1
                                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                     => ( X1 = X2 ) ) ) ) )
                                         => ulamvar1 )
                                     => ( induction2lem_lthm
                                       != ( ! [X1: term,X2: subst] :
                                              ( X1
                                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                         => ( ! [X1: term,X2: subst] :
                                                ( X2
                                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                           => ( sP17
                                             => ( ! [X1: term > $o,X2: term] :
                                                    ( ~ ( ~ ( ! [X3: term] :
                                                                ( ( var @ X3 )
                                                               => ( X1 @ X3 ) )
                                                           => ~ ! [X3: term,X4: term] :
                                                                  ( ~ ( ( X1 @ X3 )
                                                                     => ~ ( X1 @ X4 ) )
                                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                       => ~ ! [X3: term] :
                                                              ( ( X1 @ X3 )
                                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                                   => ( X1 @ X2 ) )
                                               => ! [X1: term > $o,X2: term,X3: subst] :
                                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                ( ~ ( ( X1 @ X4 )
                                                                   => ~ ( X1 @ X5 ) )
                                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                           => ~ ! [X4: term] :
                                                                  ( ! [X5: term] :
                                                                      ( ( X1 @ X5 )
                                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ( var @ X4 )
                                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                                 => ~ hoasinduction_lem3v2_gthm )
                             => ~ apnotvar )
                         => ~ pushprop_lthm_orig )
                     => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
                 => ( hoasinduction_lthm
                   != ( ! [X1: term > $o,X2: term] :
                          ( ~ ( ~ ( ! [X3: term] :
                                      ( ( var @ X3 )
                                     => ( X1 @ X3 ) )
                                 => ~ ! [X3: term,X4: term] :
                                        ( ~ ( ( X1 @ X3 )
                                           => ~ ( X1 @ X4 ) )
                                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                             => ~ ! [X3: term] :
                                    ( ! [X4: term] :
                                        ( ( X1 @ X4 )
                                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                   => ( X1 @ ( lam @ X3 ) ) ) )
                         => ( X1 @ X2 ) )
                     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                       => ~ ! [X4: term,X5: term] :
                                              ( ~ ( ( X1 @ id @ X4 @ id )
                                                 => ~ ( X1 @ id @ X5 @ id ) )
                                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                                   => ~ ( X1 @ id @ X2 @ id ) )
                               => ~ ( X1 @ id @ X3 @ id ) )
                           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                       => ( ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                     => ~ ! [X3: subst > term > term] :
                                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( X1 @ id @ X4 @ id )
                                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                                 => ~ ! [X3: term] :
                                        ( ( X1 @ id @ X3 @ id )
                                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                         => ! [X1: subst > term > subst > $o,X2: term] :
                              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                         => ~ ! [X3: term] :
                                                ( ( var @ ( sub @ X3 @ id ) )
                                               => ( X1 @ id @ X3 @ id ) ) )
                                     => ~ ! [X3: term,X4: term] :
                                            ( ~ ( ( X1 @ id @ X3 @ id )
                                               => ~ ( X1 @ id @ X4 @ id ) )
                                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                                 => ~ ! [X3: subst > term > term] :
                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X1 @ id @ X4 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                             => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
             => ( hoasinduction_no_psi_cond_lthm
               != ( sP10
                 => ( ! [X1: term > $o,X2: term] :
                        ( ~ ( ~ ( ! [X3: term] :
                                    ( ( var @ X3 )
                                   => ( X1 @ X3 ) )
                               => ~ ! [X3: term,X4: term] :
                                      ( ~ ( ( X1 @ X3 )
                                         => ~ ( X1 @ X4 ) )
                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                           => ~ ! [X3: term] :
                                  ( ! [X4: term] :
                                      ( ( X1 @ X4 )
                                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                                 => ( X1 @ ( lam @ X3 ) ) ) )
                       => ( X1 @ X2 ) )
                   => ( ! [X1: term] :
                          ( X1
                          = ( sub @ X1 @ id ) )
                     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                            ( ~ ( ~ ( ! [X4: subst > term > term] :
                                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                           => ~ ! [X5: term] :
                                                  ( ( X1 @ id @ X5 @ id )
                                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                                   => ~ ! [X4: term] :
                                          ( ( X2 @ X4 )
                                          = ( X1 @ id @ X4 @ id ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X2 @ X4 )
                                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                           => ( X2 @ ( lam @ X3 ) ) )
                       => ! [X1: subst > term > subst > $o,X2: term] :
                            ( ~ ( ! [X3: term,X4: term] :
                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                       => ~ ( X1 @ id @ X4 @ id ) )
                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                               => ~ ! [X3: subst > term > term] :
                                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                         => ~ ! [X4: term] :
                                                ( ( X1 @ id @ X4 @ id )
                                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                           => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
         => ( hoaslaminj
           != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
                  ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                              ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                              = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                                = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                     => ( ( lam @ ( X1 @ sh @ one ) )
                       != ( lam @ ( X2 @ sh @ one ) ) ) )
                 => ( ( X1 @ X3 @ X4 )
                    = ( X2 @ X3 @ X4 ) ) ) ) ) )
     => ( hoasinduction_lem3aaa
       != ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ! [X3: subst > term > term,X4: term] :
                      ( ~ ( ~ ( ! [X5: term] :
                                  ( ( X1 @ id @ X5 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                         => ~ ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                                = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                     => ~ ! [X5: subst,X6: term,X7: subst] :
                            ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                            = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ id @ X3 @ id )
                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
             => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h186,assumption,
    induction2lem_gthm,
    introduced(assumption,[]) ).

thf(h187,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                                          ( X1
                                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                                    ( X1
                                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                             => ( one
                                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                             => ( id
                                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                                         => ( sh
                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                         => ( hoaslam
                                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                            ! [X3: term] :
                                                                                                              ( ( X2 @ X3 )
                                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                                 => ~ sP36 )
                                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                                     => ~ pushprop_lem1_gthm )
                                                                                 => ~ axmap )
                                                                             => ~ pushprop_lem0_gthm )
                                                                         => ( shinj
                                                                           != ( ! [X1: term,X2: term] :
                                                                                  ( ( ( sub @ X1 @ sh )
                                                                                    = ( sub @ X2 @ sh ) )
                                                                                 => ( X1 = X2 ) ) ) ) )
                                                                     => ~ hoasinduction_lem1v2 )
                                                                 => ~ hoasinduction_lem1v2_gthm )
                                                             => ( induction2lem
                                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                                  ( ~ ( ( X1 @ X4 )
                                                                                     => ~ ( X1 @ X5 ) )
                                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                             => ~ ! [X4: term] :
                                                                                    ( ! [X5: term] :
                                                                                        ( ( X1 @ X5 )
                                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ( var @ X4 )
                                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                                     => ~ axvarshift )
                                                 => ( hoasapinj2 != sP26 ) )
                                             => ~ hoasapnotvar_gthm )
                                         => ( hoasapinj1
                                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                                 => ( X1 = X2 ) ) ) ) )
                                     => ulamvar1 )
                                 => ( induction2lem_lthm
                                   != ( ! [X1: term,X2: subst] :
                                          ( X1
                                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                     => ( ! [X1: term,X2: subst] :
                                            ( X2
                                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                       => ( sP17
                                         => ( ! [X1: term > $o,X2: term] :
                                                ( ~ ( ~ ( ! [X3: term] :
                                                            ( ( var @ X3 )
                                                           => ( X1 @ X3 ) )
                                                       => ~ ! [X3: term,X4: term] :
                                                              ( ~ ( ( X1 @ X3 )
                                                                 => ~ ( X1 @ X4 ) )
                                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                                   => ~ ! [X3: term] :
                                                          ( ( X1 @ X3 )
                                                         => ( X1 @ ( lam @ X3 ) ) ) )
                                               => ( X1 @ X2 ) )
                                           => ! [X1: term > $o,X2: term,X3: subst] :
                                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                            ( ~ ( ( X1 @ X4 )
                                                               => ~ ( X1 @ X5 ) )
                                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                       => ~ ! [X4: term] :
                                                              ( ! [X5: term] :
                                                                  ( ( X1 @ X5 )
                                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ( var @ X4 )
                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                             => ~ hoasinduction_lem3v2_gthm )
                         => ~ apnotvar )
                     => ~ pushprop_lthm_orig )
                 => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
             => ( hoasinduction_lthm
               != ( ! [X1: term > $o,X2: term] :
                      ( ~ ( ~ ( ! [X3: term] :
                                  ( ( var @ X3 )
                                 => ( X1 @ X3 ) )
                             => ~ ! [X3: term,X4: term] :
                                    ( ~ ( ( X1 @ X3 )
                                       => ~ ( X1 @ X4 ) )
                                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ! [X4: term] :
                                    ( ( X1 @ X4 )
                                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                               => ( X1 @ ( lam @ X3 ) ) ) )
                     => ( X1 @ X2 ) )
                 => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                                   => ~ ! [X4: term,X5: term] :
                                          ( ~ ( ( X1 @ id @ X4 @ id )
                                             => ~ ( X1 @ id @ X5 @ id ) )
                                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                               => ~ ( X1 @ id @ X2 @ id ) )
                           => ~ ( X1 @ id @ X3 @ id ) )
                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
                   => ( ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                 => ~ ! [X3: subst > term > term] :
                                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( X1 @ id @ X4 @ id )
                                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                             => ~ ! [X3: term] :
                                    ( ( X1 @ id @ X3 @ id )
                                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                     => ! [X1: subst > term > subst > $o,X2: term] :
                          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                     => ~ ! [X3: term] :
                                            ( ( var @ ( sub @ X3 @ id ) )
                                           => ( X1 @ id @ X3 @ id ) ) )
                                 => ~ ! [X3: term,X4: term] :
                                        ( ~ ( ( X1 @ id @ X3 @ id )
                                           => ~ ( X1 @ id @ X4 @ id ) )
                                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                             => ~ ! [X3: subst > term > term] :
                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X1 @ id @ X4 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                         => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
         => ( hoasinduction_no_psi_cond_lthm
           != ( sP10
             => ( ! [X1: term > $o,X2: term] :
                    ( ~ ( ~ ( ! [X3: term] :
                                ( ( var @ X3 )
                               => ( X1 @ X3 ) )
                           => ~ ! [X3: term,X4: term] :
                                  ( ~ ( ( X1 @ X3 )
                                     => ~ ( X1 @ X4 ) )
                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                       => ~ ! [X3: term] :
                              ( ! [X4: term] :
                                  ( ( X1 @ X4 )
                                 => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                             => ( X1 @ ( lam @ X3 ) ) ) )
                   => ( X1 @ X2 ) )
               => ( ! [X1: term] :
                      ( X1
                      = ( sub @ X1 @ id ) )
                 => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                        ( ~ ( ~ ( ! [X4: subst > term > term] :
                                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                       => ~ ! [X5: term] :
                                              ( ( X1 @ id @ X5 @ id )
                                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                               => ~ ! [X4: term] :
                                      ( ( X2 @ X4 )
                                      = ( X1 @ id @ X4 @ id ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X2 @ X4 )
                                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                       => ( X2 @ ( lam @ X3 ) ) )
                   => ! [X1: subst > term > subst > $o,X2: term] :
                        ( ~ ( ! [X3: term,X4: term] :
                                ( ~ ( ( X1 @ id @ X3 @ id )
                                   => ~ ( X1 @ id @ X4 @ id ) )
                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                           => ~ ! [X3: subst > term > term] :
                                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                     => ~ ! [X4: term] :
                                            ( ( X1 @ id @ X4 @ id )
                                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                       => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) )
     => ( hoaslaminj
       != ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                     => ~ ! [X5: subst,X6: term,X7: subst] :
                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                 => ( ( lam @ ( X1 @ sh @ one ) )
                   != ( lam @ ( X2 @ sh @ one ) ) ) )
             => ( ( X1 @ X3 @ X4 )
                = ( X2 @ X3 @ X4 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h188,assumption,
    ( hoasinduction_lem3aaa
    = ( ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ! [X3: subst > term > term,X4: term] :
                  ( ~ ( ~ ( ! [X5: term] :
                              ( ( X1 @ id @ X5 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                     => ~ ! [X5: subst,X6: term,X7: subst] :
                            ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                            = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
                 => ~ ! [X5: subst,X6: term,X7: subst] :
                        ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                        = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
             => ~ ! [X3: term] :
                    ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
         => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h189,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                                      ( X1
                                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                                ( X1
                                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                         => ( one
                                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                         => ( id
                                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                                     => ( sh
                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                     => ( hoaslam
                                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                        ! [X3: term] :
                                                                                                          ( ( X2 @ X3 )
                                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                             => ~ sP36 )
                                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                                 => ~ pushprop_lem1_gthm )
                                                                             => ~ axmap )
                                                                         => ~ pushprop_lem0_gthm )
                                                                     => ( shinj
                                                                       != ( ! [X1: term,X2: term] :
                                                                              ( ( ( sub @ X1 @ sh )
                                                                                = ( sub @ X2 @ sh ) )
                                                                             => ( X1 = X2 ) ) ) ) )
                                                                 => ~ hoasinduction_lem1v2 )
                                                             => ~ hoasinduction_lem1v2_gthm )
                                                         => ( induction2lem
                                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                              ( ~ ( ( X1 @ X4 )
                                                                                 => ~ ( X1 @ X5 ) )
                                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                         => ~ ! [X4: term] :
                                                                                ( ! [X5: term] :
                                                                                    ( ( X1 @ X5 )
                                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ( var @ X4 )
                                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                                 => ~ axvarshift )
                                             => ( hoasapinj2 != sP26 ) )
                                         => ~ hoasapnotvar_gthm )
                                     => ( hoasapinj1
                                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                             => ( X1 = X2 ) ) ) ) )
                                 => ulamvar1 )
                             => ( induction2lem_lthm
                               != ( ! [X1: term,X2: subst] :
                                      ( X1
                                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                                 => ( ! [X1: term,X2: subst] :
                                        ( X2
                                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                                   => ( sP17
                                     => ( ! [X1: term > $o,X2: term] :
                                            ( ~ ( ~ ( ! [X3: term] :
                                                        ( ( var @ X3 )
                                                       => ( X1 @ X3 ) )
                                                   => ~ ! [X3: term,X4: term] :
                                                          ( ~ ( ( X1 @ X3 )
                                                             => ~ ( X1 @ X4 ) )
                                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                               => ~ ! [X3: term] :
                                                      ( ( X1 @ X3 )
                                                     => ( X1 @ ( lam @ X3 ) ) ) )
                                           => ( X1 @ X2 ) )
                                       => ! [X1: term > $o,X2: term,X3: subst] :
                                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                        ( ~ ( ( X1 @ X4 )
                                                           => ~ ( X1 @ X5 ) )
                                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                   => ~ ! [X4: term] :
                                                          ( ! [X5: term] :
                                                              ( ( X1 @ X5 )
                                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                         => ( X1 @ ( lam @ X4 ) ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ( var @ X4 )
                                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                         => ~ hoasinduction_lem3v2_gthm )
                     => ~ apnotvar )
                 => ~ pushprop_lthm_orig )
             => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
         => ( hoasinduction_lthm
           != ( ! [X1: term > $o,X2: term] :
                  ( ~ ( ~ ( ! [X3: term] :
                              ( ( var @ X3 )
                             => ( X1 @ X3 ) )
                         => ~ ! [X3: term,X4: term] :
                                ( ~ ( ( X1 @ X3 )
                                   => ~ ( X1 @ X4 ) )
                               => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                     => ~ ! [X3: term] :
                            ( ! [X4: term] :
                                ( ( X1 @ X4 )
                               => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                           => ( X1 @ ( lam @ X3 ) ) ) )
                 => ( X1 @ X2 ) )
             => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                    ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                        ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                       => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                                   => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                          ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                         => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                               => ~ ! [X4: term,X5: term] :
                                      ( ~ ( ( X1 @ id @ X4 @ id )
                                         => ~ ( X1 @ id @ X5 @ id ) )
                                     => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                           => ~ ( X1 @ id @ X2 @ id ) )
                       => ~ ( X1 @ id @ X3 @ id ) )
                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
               => ( ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                             => ~ ! [X3: subst > term > term] :
                                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( X1 @ id @ X4 @ id )
                                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                         => ~ ! [X3: term] :
                                ( ( X1 @ id @ X3 @ id )
                               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ X2 ) @ id ) )
                 => ! [X1: subst > term > subst > $o,X2: term] :
                      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                                 => ~ ! [X3: term] :
                                        ( ( var @ ( sub @ X3 @ id ) )
                                       => ( X1 @ id @ X3 @ id ) ) )
                             => ~ ! [X3: term,X4: term] :
                                    ( ~ ( ( X1 @ id @ X3 @ id )
                                       => ~ ( X1 @ id @ X4 @ id ) )
                                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                         => ~ ! [X3: subst > term > term] :
                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X1 @ id @ X4 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                     => ( X1 @ id @ X2 @ id ) ) ) ) ) ) )
     => ( hoasinduction_no_psi_cond_lthm
       != ( sP10
         => ( ! [X1: term > $o,X2: term] :
                ( ~ ( ~ ( ! [X3: term] :
                            ( ( var @ X3 )
                           => ( X1 @ X3 ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ X3 )
                                 => ~ ( X1 @ X4 ) )
                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                   => ~ ! [X3: term] :
                          ( ! [X4: term] :
                              ( ( X1 @ X4 )
                             => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                         => ( X1 @ ( lam @ X3 ) ) ) )
               => ( X1 @ X2 ) )
           => ( ! [X1: term] :
                  ( X1
                  = ( sub @ X1 @ id ) )
             => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                    ( ~ ( ~ ( ! [X4: subst > term > term] :
                                ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                        ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                        = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                                   => ~ ! [X5: term] :
                                          ( ( X1 @ id @ X5 @ id )
                                         => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                           => ~ ! [X4: term] :
                                  ( ( X2 @ X4 )
                                  = ( X1 @ id @ X4 @ id ) ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                             => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
                   => ( X2 @ ( lam @ X3 ) ) )
               => ! [X1: subst > term > subst > $o,X2: term] :
                    ( ~ ( ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ id @ X3 @ id )
                               => ~ ( X1 @ id @ X4 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                       => ~ ! [X3: subst > term > term] :
                              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                 => ~ ! [X4: term] :
                                        ( ( X1 @ id @ X4 @ id )
                                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                   => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h190,assumption,
    ( hoaslaminj
    = ( ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
          ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                      ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                      = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                 => ~ ! [X5: subst,X6: term,X7: subst] :
                        ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                        = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
             => ( ( lam @ ( X1 @ sh @ one ) )
               != ( lam @ ( X2 @ sh @ one ) ) ) )
         => ( ( X1 @ X3 @ X4 )
            = ( X2 @ X3 @ X4 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h191,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                                  ( X1
                                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                                            ( X1
                                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                     => ( one
                                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                     => ( id
                                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                                 => ( sh
                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                 => ( hoaslam
                                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                             => ( hoasinduction_p_and_p_prime
                                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                    ! [X3: term] :
                                                                                                      ( ( X2 @ X3 )
                                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                         => ~ sP36 )
                                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                                             => ~ pushprop_lem1_gthm )
                                                                         => ~ axmap )
                                                                     => ~ pushprop_lem0_gthm )
                                                                 => ( shinj
                                                                   != ( ! [X1: term,X2: term] :
                                                                          ( ( ( sub @ X1 @ sh )
                                                                            = ( sub @ X2 @ sh ) )
                                                                         => ( X1 = X2 ) ) ) ) )
                                                             => ~ hoasinduction_lem1v2 )
                                                         => ~ hoasinduction_lem1v2_gthm )
                                                     => ( induction2lem
                                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                          ( ~ ( ( X1 @ X4 )
                                                                             => ~ ( X1 @ X5 ) )
                                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                     => ~ ! [X4: term] :
                                                                            ( ! [X5: term] :
                                                                                ( ( X1 @ X5 )
                                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ( var @ X4 )
                                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                                             => ~ axvarshift )
                                         => ( hoasapinj2 != sP26 ) )
                                     => ~ hoasapnotvar_gthm )
                                 => ( hoasapinj1
                                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                         => ( X1 = X2 ) ) ) ) )
                             => ulamvar1 )
                         => ( induction2lem_lthm
                           != ( ! [X1: term,X2: subst] :
                                  ( X1
                                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                             => ( ! [X1: term,X2: subst] :
                                    ( X2
                                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                               => ( sP17
                                 => ( ! [X1: term > $o,X2: term] :
                                        ( ~ ( ~ ( ! [X3: term] :
                                                    ( ( var @ X3 )
                                                   => ( X1 @ X3 ) )
                                               => ~ ! [X3: term,X4: term] :
                                                      ( ~ ( ( X1 @ X3 )
                                                         => ~ ( X1 @ X4 ) )
                                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                           => ~ ! [X3: term] :
                                                  ( ( X1 @ X3 )
                                                 => ( X1 @ ( lam @ X3 ) ) ) )
                                       => ( X1 @ X2 ) )
                                   => ! [X1: term > $o,X2: term,X3: subst] :
                                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                    ( ~ ( ( X1 @ X4 )
                                                       => ~ ( X1 @ X5 ) )
                                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                               => ~ ! [X4: term] :
                                                      ( ! [X5: term] :
                                                          ( ( X1 @ X5 )
                                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                     => ( X1 @ ( lam @ X4 ) ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ( var @ X4 )
                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                     => ~ hoasinduction_lem3v2_gthm )
                 => ~ apnotvar )
             => ~ pushprop_lthm_orig )
         => ( hoasinduction_lem3v2_f_lthm != sP22 ) )
     => ( hoasinduction_lthm
       != ( ! [X1: term > $o,X2: term] :
              ( ~ ( ~ ( ! [X3: term] :
                          ( ( var @ X3 )
                         => ( X1 @ X3 ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ X3 )
                               => ~ ( X1 @ X4 ) )
                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                 => ~ ! [X3: term] :
                        ( ! [X4: term] :
                            ( ( X1 @ X4 )
                           => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                       => ( X1 @ ( lam @ X3 ) ) ) )
             => ( X1 @ X2 ) )
         => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
                ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                    ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                                   => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                               => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                      ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                     => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                           => ~ ! [X4: term,X5: term] :
                                  ( ~ ( ( X1 @ id @ X4 @ id )
                                     => ~ ( X1 @ id @ X5 @ id ) )
                                 => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                       => ~ ( X1 @ id @ X2 @ id ) )
                   => ~ ( X1 @ id @ X3 @ id ) )
               => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
           => ( ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: subst > term > term] :
                                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( X1 @ id @ X4 @ id )
                                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                     => ~ ! [X3: term] :
                            ( ( X1 @ id @ X3 @ id )
                           => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ X2 ) @ id ) )
             => ! [X1: subst > term > subst > $o,X2: term] :
                  ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                             => ~ ! [X3: term] :
                                    ( ( var @ ( sub @ X3 @ id ) )
                                   => ( X1 @ id @ X3 @ id ) ) )
                         => ~ ! [X3: term,X4: term] :
                                ( ~ ( ( X1 @ id @ X3 @ id )
                                   => ~ ( X1 @ id @ X4 @ id ) )
                               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                     => ~ ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h192,assumption,
    ( hoasinduction_no_psi_cond_lthm
    = ( sP10
     => ( ! [X1: term > $o,X2: term] :
            ( ~ ( ~ ( ! [X3: term] :
                        ( ( var @ X3 )
                       => ( X1 @ X3 ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ X3 )
                             => ~ ( X1 @ X4 ) )
                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
               => ~ ! [X3: term] :
                      ( ! [X4: term] :
                          ( ( X1 @ X4 )
                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                     => ( X1 @ ( lam @ X3 ) ) ) )
           => ( X1 @ X2 ) )
       => ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                ( ~ ( ~ ( ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                              = ( X1 @ id @ X4 @ id ) ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
               => ( X2 @ ( lam @ X3 ) ) )
           => ! [X1: subst > term > subst > $o,X2: term] :
                ( ~ ( ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ id @ X3 @ id )
                           => ~ ( X1 @ id @ X4 @ id ) )
                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h193,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                                              ( X1
                                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                                        ( X1
                                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                 => ( one
                                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                 => ( id
                                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                                             => ( sh
                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                                   != ( d2term @ d_one ) ) )
                                                                                             => ( hoaslam
                                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                         => ( hoasinduction_p_and_p_prime
                                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                                ! [X3: term] :
                                                                                                  ( ( X2 @ X3 )
                                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                     => ~ sP36 )
                                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                                         => ~ pushprop_lem1_gthm )
                                                                     => ~ axmap )
                                                                 => ~ pushprop_lem0_gthm )
                                                             => ( shinj
                                                               != ( ! [X1: term,X2: term] :
                                                                      ( ( ( sub @ X1 @ sh )
                                                                        = ( sub @ X2 @ sh ) )
                                                                     => ( X1 = X2 ) ) ) ) )
                                                         => ~ hoasinduction_lem1v2 )
                                                     => ~ hoasinduction_lem1v2_gthm )
                                                 => ( induction2lem
                                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                      ( ~ ( ( X1 @ X4 )
                                                                         => ~ ( X1 @ X5 ) )
                                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                                 => ~ ! [X4: term] :
                                                                        ( ! [X5: term] :
                                                                            ( ( X1 @ X5 )
                                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ( var @ X4 )
                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                             => ( hoasinduction_lem3v2_f != sP22 ) )
                                         => ~ axvarshift )
                                     => ( hoasapinj2 != sP26 ) )
                                 => ~ hoasapnotvar_gthm )
                             => ( hoasapinj1
                               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                     => ( X1 = X2 ) ) ) ) )
                         => ulamvar1 )
                     => ( induction2lem_lthm
                       != ( ! [X1: term,X2: subst] :
                              ( X1
                              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                         => ( ! [X1: term,X2: subst] :
                                ( X2
                                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                           => ( sP17
                             => ( ! [X1: term > $o,X2: term] :
                                    ( ~ ( ~ ( ! [X3: term] :
                                                ( ( var @ X3 )
                                               => ( X1 @ X3 ) )
                                           => ~ ! [X3: term,X4: term] :
                                                  ( ~ ( ( X1 @ X3 )
                                                     => ~ ( X1 @ X4 ) )
                                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                       => ~ ! [X3: term] :
                                              ( ( X1 @ X3 )
                                             => ( X1 @ ( lam @ X3 ) ) ) )
                                   => ( X1 @ X2 ) )
                               => ! [X1: term > $o,X2: term,X3: subst] :
                                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                ( ~ ( ( X1 @ X4 )
                                                   => ~ ( X1 @ X5 ) )
                                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                           => ~ ! [X4: term] :
                                                  ( ! [X5: term] :
                                                      ( ( X1 @ X5 )
                                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                 => ( X1 @ ( lam @ X4 ) ) ) )
                                       => ~ ! [X4: term] :
                                              ( ( var @ X4 )
                                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
                 => ~ hoasinduction_lem3v2_gthm )
             => ~ apnotvar )
         => ~ pushprop_lthm_orig )
     => ( hoasinduction_lem3v2_f_lthm != sP22 ) ),
    introduced(assumption,[]) ).

thf(h194,assumption,
    ( hoasinduction_lthm
    = ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) )
     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                       => ~ ! [X4: term,X5: term] :
                              ( ~ ( ( X1 @ id @ X4 @ id )
                                 => ~ ( X1 @ id @ X5 @ id ) )
                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                   => ~ ( X1 @ id @ X2 @ id ) )
               => ~ ( X1 @ id @ X3 @ id ) )
           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
       => ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                     => ~ ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ id @ X3 @ id )
                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
         => ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( var @ ( sub @ X3 @ id ) )
                               => ( X1 @ id @ X3 @ id ) ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ id @ X3 @ id )
                               => ~ ( X1 @ id @ X4 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h195,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                                          ( X1
                                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                                    ( X1
                                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                             => ( one
                                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                             => ( id
                                                                                                               != ( d2subst @ d_id ) ) )
                                                                                                         => ( sh
                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                               != ( d2term @ d_one ) ) )
                                                                                         => ( hoaslam
                                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                     => ( hoasinduction_p_and_p_prime
                                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                            ! [X3: term] :
                                                                                              ( ( X2 @ X3 )
                                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                                 => ~ sP36 )
                                                                             => ( var @ ( d2term @ d_one ) ) )
                                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                                     => ~ pushprop_lem1_gthm )
                                                                 => ~ axmap )
                                                             => ~ pushprop_lem0_gthm )
                                                         => ( shinj
                                                           != ( ! [X1: term,X2: term] :
                                                                  ( ( ( sub @ X1 @ sh )
                                                                    = ( sub @ X2 @ sh ) )
                                                                 => ( X1 = X2 ) ) ) ) )
                                                     => ~ hoasinduction_lem1v2 )
                                                 => ~ hoasinduction_lem1v2_gthm )
                                             => ( induction2lem
                                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                                  ( ~ ( ( X1 @ X4 )
                                                                     => ~ ( X1 @ X5 ) )
                                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                             => ~ ! [X4: term] :
                                                                    ( ! [X5: term] :
                                                                        ( ( X1 @ X5 )
                                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                                         => ~ ! [X4: term] :
                                                                ( ( var @ X4 )
                                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                         => ( hoasinduction_lem3v2_f != sP22 ) )
                                     => ~ axvarshift )
                                 => ( hoasapinj2 != sP26 ) )
                             => ~ hoasapnotvar_gthm )
                         => ( hoasapinj1
                           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                                 => ( X1 = X2 ) ) ) ) )
                     => ulamvar1 )
                 => ( induction2lem_lthm
                   != ( ! [X1: term,X2: subst] :
                          ( X1
                          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                     => ( ! [X1: term,X2: subst] :
                            ( X2
                            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                       => ( sP17
                         => ( ! [X1: term > $o,X2: term] :
                                ( ~ ( ~ ( ! [X3: term] :
                                            ( ( var @ X3 )
                                           => ( X1 @ X3 ) )
                                       => ~ ! [X3: term,X4: term] :
                                              ( ~ ( ( X1 @ X3 )
                                                 => ~ ( X1 @ X4 ) )
                                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                                   => ~ ! [X3: term] :
                                          ( ( X1 @ X3 )
                                         => ( X1 @ ( lam @ X3 ) ) ) )
                               => ( X1 @ X2 ) )
                           => ! [X1: term > $o,X2: term,X3: subst] :
                                ( ~ ( ~ ( ! [X4: term,X5: term] :
                                            ( ~ ( ( X1 @ X4 )
                                               => ~ ( X1 @ X5 ) )
                                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                       => ~ ! [X4: term] :
                                              ( ! [X5: term] :
                                                  ( ( X1 @ X5 )
                                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                             => ( X1 @ ( lam @ X4 ) ) ) )
                                   => ~ ! [X4: term] :
                                          ( ( var @ X4 )
                                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
             => ~ hoasinduction_lem3v2_gthm )
         => ~ apnotvar )
     => ~ pushprop_lthm_orig ),
    introduced(assumption,[]) ).

thf(h196,assumption,
    hoasinduction_lem3v2_f_lthm = sP22,
    introduced(assumption,[]) ).

thf(h197,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                                      ( X1
                                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                                ( X1
                                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                         => ( one
                                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                         => ( id
                                                                                                           != ( d2subst @ d_id ) ) )
                                                                                                     => ( sh
                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                               != ( d2subst @ d_id ) ) )
                                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                           != ( d2term @ d_one ) ) )
                                                                                     => ( hoaslam
                                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                                 => ( hoasinduction_p_and_p_prime
                                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                        ! [X3: term] :
                                                                                          ( ( X2 @ X3 )
                                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                             => ~ sP36 )
                                                                         => ( var @ ( d2term @ d_one ) ) )
                                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                                 => ~ pushprop_lem1_gthm )
                                                             => ~ axmap )
                                                         => ~ pushprop_lem0_gthm )
                                                     => ( shinj
                                                       != ( ! [X1: term,X2: term] :
                                                              ( ( ( sub @ X1 @ sh )
                                                                = ( sub @ X2 @ sh ) )
                                                             => ( X1 = X2 ) ) ) ) )
                                                 => ~ hoasinduction_lem1v2 )
                                             => ~ hoasinduction_lem1v2_gthm )
                                         => ( induction2lem
                                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                              ( ~ ( ( X1 @ X4 )
                                                                 => ~ ( X1 @ X5 ) )
                                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                         => ~ ! [X4: term] :
                                                                ( ! [X5: term] :
                                                                    ( ( X1 @ X5 )
                                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                                     => ~ ! [X4: term] :
                                                            ( ( var @ X4 )
                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                     => ( hoasinduction_lem3v2_f != sP22 ) )
                                 => ~ axvarshift )
                             => ( hoasapinj2 != sP26 ) )
                         => ~ hoasapnotvar_gthm )
                     => ( hoasapinj1
                       != ( ! [X1: term,X2: term,X3: term,X4: term] :
                              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                             => ( X1 = X2 ) ) ) ) )
                 => ulamvar1 )
             => ( induction2lem_lthm
               != ( ! [X1: term,X2: subst] :
                      ( X1
                      = ( sub @ one @ ( push @ X1 @ X2 ) ) )
                 => ( ! [X1: term,X2: subst] :
                        ( X2
                        = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
                   => ( sP17
                     => ( ! [X1: term > $o,X2: term] :
                            ( ~ ( ~ ( ! [X3: term] :
                                        ( ( var @ X3 )
                                       => ( X1 @ X3 ) )
                                   => ~ ! [X3: term,X4: term] :
                                          ( ~ ( ( X1 @ X3 )
                                             => ~ ( X1 @ X4 ) )
                                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                               => ~ ! [X3: term] :
                                      ( ( X1 @ X3 )
                                     => ( X1 @ ( lam @ X3 ) ) ) )
                           => ( X1 @ X2 ) )
                       => ! [X1: term > $o,X2: term,X3: subst] :
                            ( ~ ( ~ ( ! [X4: term,X5: term] :
                                        ( ~ ( ( X1 @ X4 )
                                           => ~ ( X1 @ X5 ) )
                                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                   => ~ ! [X4: term] :
                                          ( ! [X5: term] :
                                              ( ( X1 @ X5 )
                                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                         => ( X1 @ ( lam @ X4 ) ) ) )
                               => ~ ! [X4: term] :
                                      ( ( var @ X4 )
                                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                           => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
         => ~ hoasinduction_lem3v2_gthm )
     => ~ apnotvar ),
    introduced(assumption,[]) ).

thf(h198,assumption,
    pushprop_lthm_orig,
    introduced(assumption,[]) ).

thf(h199,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                                  ( X1
                                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                                            ( X1
                                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                     => ( one
                                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                     => ( id
                                                                                                       != ( d2subst @ d_id ) ) )
                                                                                                 => ( sh
                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                               != ( d2subst @ d_id ) ) )
                                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                           != ( d2subst @ d_id ) ) )
                                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                       != ( d2term @ d_one ) ) )
                                                                                 => ( hoaslam
                                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                             => ( hoasinduction_p_and_p_prime
                                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                    ! [X3: term] :
                                                                                      ( ( X2 @ X3 )
                                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                         => ~ sP36 )
                                                                     => ( var @ ( d2term @ d_one ) ) )
                                                                 => ( pushprop_lem1v2 != sP34 ) )
                                                             => ~ pushprop_lem1_gthm )
                                                         => ~ axmap )
                                                     => ~ pushprop_lem0_gthm )
                                                 => ( shinj
                                                   != ( ! [X1: term,X2: term] :
                                                          ( ( ( sub @ X1 @ sh )
                                                            = ( sub @ X2 @ sh ) )
                                                         => ( X1 = X2 ) ) ) ) )
                                             => ~ hoasinduction_lem1v2 )
                                         => ~ hoasinduction_lem1v2_gthm )
                                     => ( induction2lem
                                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                          ( ~ ( ( X1 @ X4 )
                                                             => ~ ( X1 @ X5 ) )
                                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                     => ~ ! [X4: term] :
                                                            ( ! [X5: term] :
                                                                ( ( X1 @ X5 )
                                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                                 => ~ ! [X4: term] :
                                                        ( ( var @ X4 )
                                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                                 => ( hoasinduction_lem3v2_f != sP22 ) )
                             => ~ axvarshift )
                         => ( hoasapinj2 != sP26 ) )
                     => ~ hoasapnotvar_gthm )
                 => ( hoasapinj1
                   != ( ! [X1: term,X2: term,X3: term,X4: term] :
                          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                         => ( X1 = X2 ) ) ) ) )
             => ulamvar1 )
         => ( induction2lem_lthm
           != ( ! [X1: term,X2: subst] :
                  ( X1
                  = ( sub @ one @ ( push @ X1 @ X2 ) ) )
             => ( ! [X1: term,X2: subst] :
                    ( X2
                    = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
               => ( sP17
                 => ( ! [X1: term > $o,X2: term] :
                        ( ~ ( ~ ( ! [X3: term] :
                                    ( ( var @ X3 )
                                   => ( X1 @ X3 ) )
                               => ~ ! [X3: term,X4: term] :
                                      ( ~ ( ( X1 @ X3 )
                                         => ~ ( X1 @ X4 ) )
                                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                           => ~ ! [X3: term] :
                                  ( ( X1 @ X3 )
                                 => ( X1 @ ( lam @ X3 ) ) ) )
                       => ( X1 @ X2 ) )
                   => ! [X1: term > $o,X2: term,X3: subst] :
                        ( ~ ( ~ ( ! [X4: term,X5: term] :
                                    ( ~ ( ( X1 @ X4 )
                                       => ~ ( X1 @ X5 ) )
                                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
                               => ~ ! [X4: term] :
                                      ( ! [X5: term] :
                                          ( ( X1 @ X5 )
                                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                     => ( X1 @ ( lam @ X4 ) ) ) )
                           => ~ ! [X4: term] :
                                  ( ( var @ X4 )
                                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                       => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) )
     => ~ hoasinduction_lem3v2_gthm ),
    introduced(assumption,[]) ).

thf(h200,assumption,
    apnotvar,
    introduced(assumption,[]) ).

thf(h201,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                                              ( X1
                                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                                             => ~ ! [X1: subst] :
                                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                                        ( X1
                                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                                              = ( d2subst @ X2 ) )
                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                 => ( one
                                                                                                                   != ( d2term @ d_one ) ) )
                                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                 => ( id
                                                                                                   != ( d2subst @ d_id ) ) )
                                                                                             => ( sh
                                                                                               != ( d2subst @ d_id ) ) )
                                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                           != ( d2subst @ d_id ) ) )
                                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                       != ( d2subst @ d_id ) ) )
                                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                                   != ( d2term @ d_one ) ) )
                                                                             => ( hoaslam
                                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                         => ( hoasinduction_p_and_p_prime
                                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                                ! [X3: term] :
                                                                                  ( ( X2 @ X3 )
                                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                     => ~ sP36 )
                                                                 => ( var @ ( d2term @ d_one ) ) )
                                                             => ( pushprop_lem1v2 != sP34 ) )
                                                         => ~ pushprop_lem1_gthm )
                                                     => ~ axmap )
                                                 => ~ pushprop_lem0_gthm )
                                             => ( shinj
                                               != ( ! [X1: term,X2: term] :
                                                      ( ( ( sub @ X1 @ sh )
                                                        = ( sub @ X2 @ sh ) )
                                                     => ( X1 = X2 ) ) ) ) )
                                         => ~ hoasinduction_lem1v2 )
                                     => ~ hoasinduction_lem1v2_gthm )
                                 => ( induction2lem
                                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                      ( ~ ( ( X1 @ X4 )
                                                         => ~ ( X1 @ X5 ) )
                                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                                 => ~ ! [X4: term] :
                                                        ( ! [X5: term] :
                                                            ( ( X1 @ X5 )
                                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                       => ( X1 @ ( lam @ X4 ) ) ) )
                                             => ~ ! [X4: term] :
                                                    ( ( var @ X4 )
                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                             => ( hoasinduction_lem3v2_f != sP22 ) )
                         => ~ axvarshift )
                     => ( hoasapinj2 != sP26 ) )
                 => ~ hoasapnotvar_gthm )
             => ( hoasapinj1
               != ( ! [X1: term,X2: term,X3: term,X4: term] :
                      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                     => ( X1 = X2 ) ) ) ) )
         => ulamvar1 )
     => ( induction2lem_lthm
       != ( ! [X1: term,X2: subst] :
              ( X1
              = ( sub @ one @ ( push @ X1 @ X2 ) ) )
         => ( ! [X1: term,X2: subst] :
                ( X2
                = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
           => ( sP17
             => ( ! [X1: term > $o,X2: term] :
                    ( ~ ( ~ ( ! [X3: term] :
                                ( ( var @ X3 )
                               => ( X1 @ X3 ) )
                           => ~ ! [X3: term,X4: term] :
                                  ( ~ ( ( X1 @ X3 )
                                     => ~ ( X1 @ X4 ) )
                                 => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                       => ~ ! [X3: term] :
                              ( ( X1 @ X3 )
                             => ( X1 @ ( lam @ X3 ) ) ) )
                   => ( X1 @ X2 ) )
               => ! [X1: term > $o,X2: term,X3: subst] :
                    ( ~ ( ~ ( ! [X4: term,X5: term] :
                                ( ~ ( ( X1 @ X4 )
                                   => ~ ( X1 @ X5 ) )
                               => ( X1 @ ( ap @ X4 @ X5 ) ) )
                           => ~ ! [X4: term] :
                                  ( ! [X5: term] :
                                      ( ( X1 @ X5 )
                                     => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                 => ( X1 @ ( lam @ X4 ) ) ) )
                       => ~ ! [X4: term] :
                              ( ( var @ X4 )
                             => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                   => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h202,assumption,
    hoasinduction_lem3v2_gthm,
    introduced(assumption,[]) ).

thf(h203,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                                          ( X1
                                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                                         => ~ ! [X1: subst] :
                                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                                    ( X1
                                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                                          = ( d2subst @ X2 ) )
                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                             => ( one
                                                                                                               != ( d2term @ d_one ) ) )
                                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                                   != ( d2term @ d_one ) ) )
                                                                                             => ( id
                                                                                               != ( d2subst @ d_id ) ) )
                                                                                         => ( sh
                                                                                           != ( d2subst @ d_id ) ) )
                                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                       != ( d2subst @ d_id ) ) )
                                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                                   != ( d2subst @ d_id ) ) )
                                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                               != ( d2term @ d_one ) ) )
                                                                         => ( hoaslam
                                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                     => ( hoasinduction_p_and_p_prime
                                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                            ! [X3: term] :
                                                                              ( ( X2 @ X3 )
                                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                                 => ~ sP36 )
                                                             => ( var @ ( d2term @ d_one ) ) )
                                                         => ( pushprop_lem1v2 != sP34 ) )
                                                     => ~ pushprop_lem1_gthm )
                                                 => ~ axmap )
                                             => ~ pushprop_lem0_gthm )
                                         => ( shinj
                                           != ( ! [X1: term,X2: term] :
                                                  ( ( ( sub @ X1 @ sh )
                                                    = ( sub @ X2 @ sh ) )
                                                 => ( X1 = X2 ) ) ) ) )
                                     => ~ hoasinduction_lem1v2 )
                                 => ~ hoasinduction_lem1v2_gthm )
                             => ( induction2lem
                               != ( ! [X1: term > $o,X2: term,X3: subst] :
                                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                                  ( ~ ( ( X1 @ X4 )
                                                     => ~ ( X1 @ X5 ) )
                                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                             => ~ ! [X4: term] :
                                                    ( ! [X5: term] :
                                                        ( ( X1 @ X5 )
                                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                                   => ( X1 @ ( lam @ X4 ) ) ) )
                                         => ~ ! [X4: term] :
                                                ( ( var @ X4 )
                                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                         => ( hoasinduction_lem3v2_f != sP22 ) )
                     => ~ axvarshift )
                 => ( hoasapinj2 != sP26 ) )
             => ~ hoasapnotvar_gthm )
         => ( hoasapinj1
           != ( ! [X1: term,X2: term,X3: term,X4: term] :
                  ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                    = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
                 => ( X1 = X2 ) ) ) ) )
     => ulamvar1 ),
    introduced(assumption,[]) ).

thf(h204,assumption,
    ( induction2lem_lthm
    = ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( X2
            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
       => ( sP17
         => ( ! [X1: term > $o,X2: term] :
                ( ~ ( ~ ( ! [X3: term] :
                            ( ( var @ X3 )
                           => ( X1 @ X3 ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ X3 )
                                 => ~ ( X1 @ X4 ) )
                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                   => ~ ! [X3: term] :
                          ( ( X1 @ X3 )
                         => ( X1 @ ( lam @ X3 ) ) ) )
               => ( X1 @ X2 ) )
           => ! [X1: term > $o,X2: term,X3: subst] :
                ( ~ ( ~ ( ! [X4: term,X5: term] :
                            ( ~ ( ( X1 @ X4 )
                               => ~ ( X1 @ X5 ) )
                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                       => ~ ! [X4: term] :
                              ( ! [X5: term] :
                                  ( ( X1 @ X5 )
                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                             => ( X1 @ ( lam @ X4 ) ) ) )
                   => ~ ! [X4: term] :
                          ( ( var @ X4 )
                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h205,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                                      ( X1
                                                                                                                                     != ( d2term @ X2 ) )
                                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                                  = ( d2term @ X2 ) )
                                                                                                                               => ( X1 = X2 ) ) )
                                                                                                                     => ~ ! [X1: subst] :
                                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                                ( X1
                                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                                      = ( d2subst @ X2 ) )
                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                         => ( one
                                                                                                           != ( d2term @ d_one ) ) )
                                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                                   != ( d2term @ d_one ) ) )
                                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                               != ( d2term @ d_one ) ) )
                                                                                         => ( id
                                                                                           != ( d2subst @ d_id ) ) )
                                                                                     => ( sh
                                                                                       != ( d2subst @ d_id ) ) )
                                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                   != ( d2subst @ d_id ) ) )
                                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                               != ( d2subst @ d_id ) ) )
                                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                           != ( d2term @ d_one ) ) )
                                                                     => ( hoaslam
                                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                                 => ( hoasinduction_p_and_p_prime
                                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                        ! [X3: term] :
                                                                          ( ( X2 @ X3 )
                                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                             => ~ sP36 )
                                                         => ( var @ ( d2term @ d_one ) ) )
                                                     => ( pushprop_lem1v2 != sP34 ) )
                                                 => ~ pushprop_lem1_gthm )
                                             => ~ axmap )
                                         => ~ pushprop_lem0_gthm )
                                     => ( shinj
                                       != ( ! [X1: term,X2: term] :
                                              ( ( ( sub @ X1 @ sh )
                                                = ( sub @ X2 @ sh ) )
                                             => ( X1 = X2 ) ) ) ) )
                                 => ~ hoasinduction_lem1v2 )
                             => ~ hoasinduction_lem1v2_gthm )
                         => ( induction2lem
                           != ( ! [X1: term > $o,X2: term,X3: subst] :
                                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                                              ( ~ ( ( X1 @ X4 )
                                                 => ~ ( X1 @ X5 ) )
                                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                         => ~ ! [X4: term] :
                                                ( ! [X5: term] :
                                                    ( ( X1 @ X5 )
                                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                               => ( X1 @ ( lam @ X4 ) ) ) )
                                     => ~ ! [X4: term] :
                                            ( ( var @ X4 )
                                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                     => ( hoasinduction_lem3v2_f != sP22 ) )
                 => ~ axvarshift )
             => ( hoasapinj2 != sP26 ) )
         => ~ hoasapnotvar_gthm )
     => ( hoasapinj1
       != ( ! [X1: term,X2: term,X3: term,X4: term] :
              ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
                = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
             => ( X1 = X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h206,assumption,
    ~ ulamvar1,
    introduced(assumption,[]) ).

thf(h207,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                              ~ ! [X2: d_term] :
                                                                                                                                  ( X1
                                                                                                                                 != ( d2term @ X2 ) )
                                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                            ( ( ( d2term @ X1 )
                                                                                                                              = ( d2term @ X2 ) )
                                                                                                                           => ( X1 = X2 ) ) )
                                                                                                                 => ~ ! [X1: subst] :
                                                                                                                        ~ ! [X2: d_subst] :
                                                                                                                            ( X1
                                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                                ( ( ( d2subst @ X1 )
                                                                                                                  = ( d2subst @ X2 ) )
                                                                                                               => ( X1 = X2 ) ) )
                                                                                                     => ( one
                                                                                                       != ( d2term @ d_one ) ) )
                                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                                   != ( d2term @ d_one ) ) )
                                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                                               != ( d2term @ d_one ) ) )
                                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                           != ( d2term @ d_one ) ) )
                                                                                     => ( id
                                                                                       != ( d2subst @ d_id ) ) )
                                                                                 => ( sh
                                                                                   != ( d2subst @ d_id ) ) )
                                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                               != ( d2subst @ d_id ) ) )
                                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                           != ( d2subst @ d_id ) ) )
                                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                       != ( d2term @ d_one ) ) )
                                                                 => ( hoaslam
                                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                             => ( hoasinduction_p_and_p_prime
                                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                    ! [X3: term] :
                                                                      ( ( X2 @ X3 )
                                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                         => ~ sP36 )
                                                     => ( var @ ( d2term @ d_one ) ) )
                                                 => ( pushprop_lem1v2 != sP34 ) )
                                             => ~ pushprop_lem1_gthm )
                                         => ~ axmap )
                                     => ~ pushprop_lem0_gthm )
                                 => ( shinj
                                   != ( ! [X1: term,X2: term] :
                                          ( ( ( sub @ X1 @ sh )
                                            = ( sub @ X2 @ sh ) )
                                         => ( X1 = X2 ) ) ) ) )
                             => ~ hoasinduction_lem1v2 )
                         => ~ hoasinduction_lem1v2_gthm )
                     => ( induction2lem
                       != ( ! [X1: term > $o,X2: term,X3: subst] :
                              ( ~ ( ~ ( ! [X4: term,X5: term] :
                                          ( ~ ( ( X1 @ X4 )
                                             => ~ ( X1 @ X5 ) )
                                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                     => ~ ! [X4: term] :
                                            ( ! [X5: term] :
                                                ( ( X1 @ X5 )
                                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                           => ( X1 @ ( lam @ X4 ) ) ) )
                                 => ~ ! [X4: term] :
                                        ( ( var @ X4 )
                                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
                 => ( hoasinduction_lem3v2_f != sP22 ) )
             => ~ axvarshift )
         => ( hoasapinj2 != sP26 ) )
     => ~ hoasapnotvar_gthm ),
    introduced(assumption,[]) ).

thf(h208,assumption,
    ( hoasapinj1
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
         => ( X1 = X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h209,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                          ~ ! [X2: d_term] :
                                                                                                                              ( X1
                                                                                                                             != ( d2term @ X2 ) )
                                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                        ( ( ( d2term @ X1 )
                                                                                                                          = ( d2term @ X2 ) )
                                                                                                                       => ( X1 = X2 ) ) )
                                                                                                             => ~ ! [X1: subst] :
                                                                                                                    ~ ! [X2: d_subst] :
                                                                                                                        ( X1
                                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                            ( ( ( d2subst @ X1 )
                                                                                                              = ( d2subst @ X2 ) )
                                                                                                           => ( X1 = X2 ) ) )
                                                                                                 => ( one
                                                                                                   != ( d2term @ d_one ) ) )
                                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                               != ( d2term @ d_one ) ) )
                                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                                           != ( d2term @ d_one ) ) )
                                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                       != ( d2term @ d_one ) ) )
                                                                                 => ( id
                                                                                   != ( d2subst @ d_id ) ) )
                                                                             => ( sh
                                                                               != ( d2subst @ d_id ) ) )
                                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                           != ( d2subst @ d_id ) ) )
                                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                       != ( d2subst @ d_id ) ) )
                                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                                   != ( d2term @ d_one ) ) )
                                                             => ( hoaslam
                                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                         => ( hoasinduction_p_and_p_prime
                                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                                ! [X3: term] :
                                                                  ( ( X2 @ X3 )
                                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                     => ~ sP36 )
                                                 => ( var @ ( d2term @ d_one ) ) )
                                             => ( pushprop_lem1v2 != sP34 ) )
                                         => ~ pushprop_lem1_gthm )
                                     => ~ axmap )
                                 => ~ pushprop_lem0_gthm )
                             => ( shinj
                               != ( ! [X1: term,X2: term] :
                                      ( ( ( sub @ X1 @ sh )
                                        = ( sub @ X2 @ sh ) )
                                     => ( X1 = X2 ) ) ) ) )
                         => ~ hoasinduction_lem1v2 )
                     => ~ hoasinduction_lem1v2_gthm )
                 => ( induction2lem
                   != ( ! [X1: term > $o,X2: term,X3: subst] :
                          ( ~ ( ~ ( ! [X4: term,X5: term] :
                                      ( ~ ( ( X1 @ X4 )
                                         => ~ ( X1 @ X5 ) )
                                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                                 => ~ ! [X4: term] :
                                        ( ! [X5: term] :
                                            ( ( X1 @ X5 )
                                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                       => ( X1 @ ( lam @ X4 ) ) ) )
                             => ~ ! [X4: term] :
                                    ( ( var @ X4 )
                                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
             => ( hoasinduction_lem3v2_f != sP22 ) )
         => ~ axvarshift )
     => ( hoasapinj2 != sP26 ) ),
    introduced(assumption,[]) ).

thf(h210,assumption,
    hoasapnotvar_gthm,
    introduced(assumption,[]) ).

thf(h211,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                      ~ ! [X2: d_term] :
                                                                                                                          ( X1
                                                                                                                         != ( d2term @ X2 ) )
                                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                    ( ( ( d2term @ X1 )
                                                                                                                      = ( d2term @ X2 ) )
                                                                                                                   => ( X1 = X2 ) ) )
                                                                                                         => ~ ! [X1: subst] :
                                                                                                                ~ ! [X2: d_subst] :
                                                                                                                    ( X1
                                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                        ( ( ( d2subst @ X1 )
                                                                                                          = ( d2subst @ X2 ) )
                                                                                                       => ( X1 = X2 ) ) )
                                                                                             => ( one
                                                                                               != ( d2term @ d_one ) ) )
                                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                           != ( d2term @ d_one ) ) )
                                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                                       != ( d2term @ d_one ) ) )
                                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                                   != ( d2term @ d_one ) ) )
                                                                             => ( id
                                                                               != ( d2subst @ d_id ) ) )
                                                                         => ( sh
                                                                           != ( d2subst @ d_id ) ) )
                                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                       != ( d2subst @ d_id ) ) )
                                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                                   != ( d2subst @ d_id ) ) )
                                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                               != ( d2term @ d_one ) ) )
                                                         => ( hoaslam
                                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                     => ( hoasinduction_p_and_p_prime
                                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                            ! [X3: term] :
                                                              ( ( X2 @ X3 )
                                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                                 => ~ sP36 )
                                             => ( var @ ( d2term @ d_one ) ) )
                                         => ( pushprop_lem1v2 != sP34 ) )
                                     => ~ pushprop_lem1_gthm )
                                 => ~ axmap )
                             => ~ pushprop_lem0_gthm )
                         => ( shinj
                           != ( ! [X1: term,X2: term] :
                                  ( ( ( sub @ X1 @ sh )
                                    = ( sub @ X2 @ sh ) )
                                 => ( X1 = X2 ) ) ) ) )
                     => ~ hoasinduction_lem1v2 )
                 => ~ hoasinduction_lem1v2_gthm )
             => ( induction2lem
               != ( ! [X1: term > $o,X2: term,X3: subst] :
                      ( ~ ( ~ ( ! [X4: term,X5: term] :
                                  ( ~ ( ( X1 @ X4 )
                                     => ~ ( X1 @ X5 ) )
                                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
                             => ~ ! [X4: term] :
                                    ( ! [X5: term] :
                                        ( ( X1 @ X5 )
                                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                                   => ( X1 @ ( lam @ X4 ) ) ) )
                         => ~ ! [X4: term] :
                                ( ( var @ X4 )
                               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                     => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
         => ( hoasinduction_lem3v2_f != sP22 ) )
     => ~ axvarshift ),
    introduced(assumption,[]) ).

thf(h212,assumption,
    hoasapinj2 = sP26,
    introduced(assumption,[]) ).

thf(h213,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                                  ~ ! [X2: d_term] :
                                                                                                                      ( X1
                                                                                                                     != ( d2term @ X2 ) )
                                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                                ( ( ( d2term @ X1 )
                                                                                                                  = ( d2term @ X2 ) )
                                                                                                               => ( X1 = X2 ) ) )
                                                                                                     => ~ ! [X1: subst] :
                                                                                                            ~ ! [X2: d_subst] :
                                                                                                                ( X1
                                                                                                               != ( d2subst @ X2 ) ) )
                                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                    ( ( ( d2subst @ X1 )
                                                                                                      = ( d2subst @ X2 ) )
                                                                                                   => ( X1 = X2 ) ) )
                                                                                         => ( one
                                                                                           != ( d2term @ d_one ) ) )
                                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                       != ( d2term @ d_one ) ) )
                                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                                   != ( d2term @ d_one ) ) )
                                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                               != ( d2term @ d_one ) ) )
                                                                         => ( id
                                                                           != ( d2subst @ d_id ) ) )
                                                                     => ( sh
                                                                       != ( d2subst @ d_id ) ) )
                                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                   != ( d2subst @ d_id ) ) )
                                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                               != ( d2subst @ d_id ) ) )
                                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                           != ( d2term @ d_one ) ) )
                                                     => ( hoaslam
                                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                                 => ( hoasinduction_p_and_p_prime
                                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                        ! [X3: term] :
                                                          ( ( X2 @ X3 )
                                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                                             => ~ sP36 )
                                         => ( var @ ( d2term @ d_one ) ) )
                                     => ( pushprop_lem1v2 != sP34 ) )
                                 => ~ pushprop_lem1_gthm )
                             => ~ axmap )
                         => ~ pushprop_lem0_gthm )
                     => ( shinj
                       != ( ! [X1: term,X2: term] :
                              ( ( ( sub @ X1 @ sh )
                                = ( sub @ X2 @ sh ) )
                             => ( X1 = X2 ) ) ) ) )
                 => ~ hoasinduction_lem1v2 )
             => ~ hoasinduction_lem1v2_gthm )
         => ( induction2lem
           != ( ! [X1: term > $o,X2: term,X3: subst] :
                  ( ~ ( ~ ( ! [X4: term,X5: term] :
                              ( ~ ( ( X1 @ X4 )
                                 => ~ ( X1 @ X5 ) )
                             => ( X1 @ ( ap @ X4 @ X5 ) ) )
                         => ~ ! [X4: term] :
                                ( ! [X5: term] :
                                    ( ( X1 @ X5 )
                                   => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                               => ( X1 @ ( lam @ X4 ) ) ) )
                     => ~ ! [X4: term] :
                            ( ( var @ X4 )
                           => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
                 => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) )
     => ( hoasinduction_lem3v2_f != sP22 ) ),
    introduced(assumption,[]) ).

thf(h214,assumption,
    axvarshift,
    introduced(assumption,[]) ).

thf(h215,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                              ~ ! [X2: d_term] :
                                                                                                                  ( X1
                                                                                                                 != ( d2term @ X2 ) )
                                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                                            ( ( ( d2term @ X1 )
                                                                                                              = ( d2term @ X2 ) )
                                                                                                           => ( X1 = X2 ) ) )
                                                                                                 => ~ ! [X1: subst] :
                                                                                                        ~ ! [X2: d_subst] :
                                                                                                            ( X1
                                                                                                           != ( d2subst @ X2 ) ) )
                                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                                ( ( ( d2subst @ X1 )
                                                                                                  = ( d2subst @ X2 ) )
                                                                                               => ( X1 = X2 ) ) )
                                                                                     => ( one
                                                                                       != ( d2term @ d_one ) ) )
                                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                                   != ( d2term @ d_one ) ) )
                                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                                               != ( d2term @ d_one ) ) )
                                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                           != ( d2term @ d_one ) ) )
                                                                     => ( id
                                                                       != ( d2subst @ d_id ) ) )
                                                                 => ( sh
                                                                   != ( d2subst @ d_id ) ) )
                                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                               != ( d2subst @ d_id ) ) )
                                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                           != ( d2subst @ d_id ) ) )
                                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                       != ( d2term @ d_one ) ) )
                                                 => ( hoaslam
                                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                             => ( hoasinduction_p_and_p_prime
                                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                    ! [X3: term] :
                                                      ( ( X2 @ X3 )
                                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                                         => ~ sP36 )
                                     => ( var @ ( d2term @ d_one ) ) )
                                 => ( pushprop_lem1v2 != sP34 ) )
                             => ~ pushprop_lem1_gthm )
                         => ~ axmap )
                     => ~ pushprop_lem0_gthm )
                 => ( shinj
                   != ( ! [X1: term,X2: term] :
                          ( ( ( sub @ X1 @ sh )
                            = ( sub @ X2 @ sh ) )
                         => ( X1 = X2 ) ) ) ) )
             => ~ hoasinduction_lem1v2 )
         => ~ hoasinduction_lem1v2_gthm )
     => ( induction2lem
       != ( ! [X1: term > $o,X2: term,X3: subst] :
              ( ~ ( ~ ( ! [X4: term,X5: term] :
                          ( ~ ( ( X1 @ X4 )
                             => ~ ( X1 @ X5 ) )
                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                     => ~ ! [X4: term] :
                            ( ! [X5: term] :
                                ( ( X1 @ X5 )
                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                           => ( X1 @ ( lam @ X4 ) ) ) )
                 => ~ ! [X4: term] :
                        ( ( var @ X4 )
                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h216,assumption,
    hoasinduction_lem3v2_f = sP22,
    introduced(assumption,[]) ).

thf(h217,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                          ~ ! [X2: d_term] :
                                                                                                              ( X1
                                                                                                             != ( d2term @ X2 ) )
                                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                                        ( ( ( d2term @ X1 )
                                                                                                          = ( d2term @ X2 ) )
                                                                                                       => ( X1 = X2 ) ) )
                                                                                             => ~ ! [X1: subst] :
                                                                                                    ~ ! [X2: d_subst] :
                                                                                                        ( X1
                                                                                                       != ( d2subst @ X2 ) ) )
                                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                            ( ( ( d2subst @ X1 )
                                                                                              = ( d2subst @ X2 ) )
                                                                                           => ( X1 = X2 ) ) )
                                                                                 => ( one
                                                                                   != ( d2term @ d_one ) ) )
                                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                               != ( d2term @ d_one ) ) )
                                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                                           != ( d2term @ d_one ) ) )
                                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                       != ( d2term @ d_one ) ) )
                                                                 => ( id
                                                                   != ( d2subst @ d_id ) ) )
                                                             => ( sh
                                                               != ( d2subst @ d_id ) ) )
                                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                           != ( d2subst @ d_id ) ) )
                                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                       != ( d2subst @ d_id ) ) )
                                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                                   != ( d2term @ d_one ) ) )
                                             => ( hoaslam
                                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                         => ( hoasinduction_p_and_p_prime
                                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                                ! [X3: term] :
                                                  ( ( X2 @ X3 )
                                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                                     => ~ sP36 )
                                 => ( var @ ( d2term @ d_one ) ) )
                             => ( pushprop_lem1v2 != sP34 ) )
                         => ~ pushprop_lem1_gthm )
                     => ~ axmap )
                 => ~ pushprop_lem0_gthm )
             => ( shinj
               != ( ! [X1: term,X2: term] :
                      ( ( ( sub @ X1 @ sh )
                        = ( sub @ X2 @ sh ) )
                     => ( X1 = X2 ) ) ) ) )
         => ~ hoasinduction_lem1v2 )
     => ~ hoasinduction_lem1v2_gthm ),
    introduced(assumption,[]) ).

thf(h218,assumption,
    ( induction2lem
    = ( ! [X1: term > $o,X2: term,X3: subst] :
          ( ~ ( ~ ( ! [X4: term,X5: term] :
                      ( ~ ( ( X1 @ X4 )
                         => ~ ( X1 @ X5 ) )
                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                 => ~ ! [X4: term] :
                        ( ! [X5: term] :
                            ( ( X1 @ X5 )
                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                       => ( X1 @ ( lam @ X4 ) ) ) )
             => ~ ! [X4: term] :
                    ( ( var @ X4 )
                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
         => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h219,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                      ~ ! [X2: d_term] :
                                                                                                          ( X1
                                                                                                         != ( d2term @ X2 ) )
                                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                                    ( ( ( d2term @ X1 )
                                                                                                      = ( d2term @ X2 ) )
                                                                                                   => ( X1 = X2 ) ) )
                                                                                         => ~ ! [X1: subst] :
                                                                                                ~ ! [X2: d_subst] :
                                                                                                    ( X1
                                                                                                   != ( d2subst @ X2 ) ) )
                                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                        ( ( ( d2subst @ X1 )
                                                                                          = ( d2subst @ X2 ) )
                                                                                       => ( X1 = X2 ) ) )
                                                                             => ( one
                                                                               != ( d2term @ d_one ) ) )
                                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                           != ( d2term @ d_one ) ) )
                                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                                       != ( d2term @ d_one ) ) )
                                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                                   != ( d2term @ d_one ) ) )
                                                             => ( id
                                                               != ( d2subst @ d_id ) ) )
                                                         => ( sh
                                                           != ( d2subst @ d_id ) ) )
                                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                       != ( d2subst @ d_id ) ) )
                                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                                   != ( d2subst @ d_id ) ) )
                                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                               != ( d2term @ d_one ) ) )
                                         => ( hoaslam
                                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                     => ( hoasinduction_p_and_p_prime
                                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                            ! [X3: term] :
                                              ( ( X2 @ X3 )
                                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                                 => ~ sP36 )
                             => ( var @ ( d2term @ d_one ) ) )
                         => ( pushprop_lem1v2 != sP34 ) )
                     => ~ pushprop_lem1_gthm )
                 => ~ axmap )
             => ~ pushprop_lem0_gthm )
         => ( shinj
           != ( ! [X1: term,X2: term] :
                  ( ( ( sub @ X1 @ sh )
                    = ( sub @ X2 @ sh ) )
                 => ( X1 = X2 ) ) ) ) )
     => ~ hoasinduction_lem1v2 ),
    introduced(assumption,[]) ).

thf(h220,assumption,
    hoasinduction_lem1v2_gthm,
    introduced(assumption,[]) ).

thf(h221,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                                  ~ ! [X2: d_term] :
                                                                                                      ( X1
                                                                                                     != ( d2term @ X2 ) )
                                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                                ( ( ( d2term @ X1 )
                                                                                                  = ( d2term @ X2 ) )
                                                                                               => ( X1 = X2 ) ) )
                                                                                     => ~ ! [X1: subst] :
                                                                                            ~ ! [X2: d_subst] :
                                                                                                ( X1
                                                                                               != ( d2subst @ X2 ) ) )
                                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                    ( ( ( d2subst @ X1 )
                                                                                      = ( d2subst @ X2 ) )
                                                                                   => ( X1 = X2 ) ) )
                                                                         => ( one
                                                                           != ( d2term @ d_one ) ) )
                                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                       != ( d2term @ d_one ) ) )
                                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                                   != ( d2term @ d_one ) ) )
                                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                               != ( d2term @ d_one ) ) )
                                                         => ( id
                                                           != ( d2subst @ d_id ) ) )
                                                     => ( sh
                                                       != ( d2subst @ d_id ) ) )
                                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                   != ( d2subst @ d_id ) ) )
                                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                               != ( d2subst @ d_id ) ) )
                                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                           != ( d2term @ d_one ) ) )
                                     => ( hoaslam
                                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                                 => ( hoasinduction_p_and_p_prime
                                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                        ! [X3: term] :
                                          ( ( X2 @ X3 )
                                          = ( X1 @ id @ X3 @ id ) ) ) ) )
                             => ~ sP36 )
                         => ( var @ ( d2term @ d_one ) ) )
                     => ( pushprop_lem1v2 != sP34 ) )
                 => ~ pushprop_lem1_gthm )
             => ~ axmap )
         => ~ pushprop_lem0_gthm )
     => ( shinj
       != ( ! [X1: term,X2: term] :
              ( ( ( sub @ X1 @ sh )
                = ( sub @ X2 @ sh ) )
             => ( X1 = X2 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h222,assumption,
    hoasinduction_lem1v2,
    introduced(assumption,[]) ).

thf(h223,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                              ~ ! [X2: d_term] :
                                                                                                  ( X1
                                                                                                 != ( d2term @ X2 ) )
                                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                                            ( ( ( d2term @ X1 )
                                                                                              = ( d2term @ X2 ) )
                                                                                           => ( X1 = X2 ) ) )
                                                                                 => ~ ! [X1: subst] :
                                                                                        ~ ! [X2: d_subst] :
                                                                                            ( X1
                                                                                           != ( d2subst @ X2 ) ) )
                                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                                ( ( ( d2subst @ X1 )
                                                                                  = ( d2subst @ X2 ) )
                                                                               => ( X1 = X2 ) ) )
                                                                     => ( one
                                                                       != ( d2term @ d_one ) ) )
                                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                                   != ( d2term @ d_one ) ) )
                                                             => ( ( lam @ ( d2term @ d_one ) )
                                                               != ( d2term @ d_one ) ) )
                                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                           != ( d2term @ d_one ) ) )
                                                     => ( id
                                                       != ( d2subst @ d_id ) ) )
                                                 => ( sh
                                                   != ( d2subst @ d_id ) ) )
                                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                               != ( d2subst @ d_id ) ) )
                                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                           != ( d2subst @ d_id ) ) )
                                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                       != ( d2term @ d_one ) ) )
                                 => ( hoaslam
                                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                             => ( hoasinduction_p_and_p_prime
                               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                    ! [X3: term] :
                                      ( ( X2 @ X3 )
                                      = ( X1 @ id @ X3 @ id ) ) ) ) )
                         => ~ sP36 )
                     => ( var @ ( d2term @ d_one ) ) )
                 => ( pushprop_lem1v2 != sP34 ) )
             => ~ pushprop_lem1_gthm )
         => ~ axmap )
     => ~ pushprop_lem0_gthm ),
    introduced(assumption,[]) ).

thf(h224,assumption,
    ( shinj
    = ( ! [X1: term,X2: term] :
          ( ( ( sub @ X1 @ sh )
            = ( sub @ X2 @ sh ) )
         => ( X1 = X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h225,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                          ~ ! [X2: d_term] :
                                                                                              ( X1
                                                                                             != ( d2term @ X2 ) )
                                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                                        ( ( ( d2term @ X1 )
                                                                                          = ( d2term @ X2 ) )
                                                                                       => ( X1 = X2 ) ) )
                                                                             => ~ ! [X1: subst] :
                                                                                    ~ ! [X2: d_subst] :
                                                                                        ( X1
                                                                                       != ( d2subst @ X2 ) ) )
                                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                                            ( ( ( d2subst @ X1 )
                                                                              = ( d2subst @ X2 ) )
                                                                           => ( X1 = X2 ) ) )
                                                                 => ( one
                                                                   != ( d2term @ d_one ) ) )
                                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                               != ( d2term @ d_one ) ) )
                                                         => ( ( lam @ ( d2term @ d_one ) )
                                                           != ( d2term @ d_one ) ) )
                                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                       != ( d2term @ d_one ) ) )
                                                 => ( id
                                                   != ( d2subst @ d_id ) ) )
                                             => ( sh
                                               != ( d2subst @ d_id ) ) )
                                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                           != ( d2subst @ d_id ) ) )
                                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                       != ( d2subst @ d_id ) ) )
                                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                                   != ( d2term @ d_one ) ) )
                             => ( hoaslam
                               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                         => ( hoasinduction_p_and_p_prime
                           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                                ! [X3: term] :
                                  ( ( X2 @ X3 )
                                  = ( X1 @ id @ X3 @ id ) ) ) ) )
                     => ~ sP36 )
                 => ( var @ ( d2term @ d_one ) ) )
             => ( pushprop_lem1v2 != sP34 ) )
         => ~ pushprop_lem1_gthm )
     => ~ axmap ),
    introduced(assumption,[]) ).

thf(h226,assumption,
    pushprop_lem0_gthm,
    introduced(assumption,[]) ).

thf(h227,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                      ~ ! [X2: d_term] :
                                                                                          ( X1
                                                                                         != ( d2term @ X2 ) )
                                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                                    ( ( ( d2term @ X1 )
                                                                                      = ( d2term @ X2 ) )
                                                                                   => ( X1 = X2 ) ) )
                                                                         => ~ ! [X1: subst] :
                                                                                ~ ! [X2: d_subst] :
                                                                                    ( X1
                                                                                   != ( d2subst @ X2 ) ) )
                                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                                        ( ( ( d2subst @ X1 )
                                                                          = ( d2subst @ X2 ) )
                                                                       => ( X1 = X2 ) ) )
                                                             => ( one
                                                               != ( d2term @ d_one ) ) )
                                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                           != ( d2term @ d_one ) ) )
                                                     => ( ( lam @ ( d2term @ d_one ) )
                                                       != ( d2term @ d_one ) ) )
                                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                                   != ( d2term @ d_one ) ) )
                                             => ( id
                                               != ( d2subst @ d_id ) ) )
                                         => ( sh
                                           != ( d2subst @ d_id ) ) )
                                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                       != ( d2subst @ d_id ) ) )
                                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                                   != ( d2subst @ d_id ) ) )
                             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                               != ( d2term @ d_one ) ) )
                         => ( hoaslam
                           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                     => ( hoasinduction_p_and_p_prime
                       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                            ! [X3: term] :
                              ( ( X2 @ X3 )
                              = ( X1 @ id @ X3 @ id ) ) ) ) )
                 => ~ sP36 )
             => ( var @ ( d2term @ d_one ) ) )
         => ( pushprop_lem1v2 != sP34 ) )
     => ~ pushprop_lem1_gthm ),
    introduced(assumption,[]) ).

thf(h228,assumption,
    axmap,
    introduced(assumption,[]) ).

thf(h229,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                                  ~ ! [X2: d_term] :
                                                                                      ( X1
                                                                                     != ( d2term @ X2 ) )
                                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                                ( ( ( d2term @ X1 )
                                                                                  = ( d2term @ X2 ) )
                                                                               => ( X1 = X2 ) ) )
                                                                     => ~ ! [X1: subst] :
                                                                            ~ ! [X2: d_subst] :
                                                                                ( X1
                                                                               != ( d2subst @ X2 ) ) )
                                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                                    ( ( ( d2subst @ X1 )
                                                                      = ( d2subst @ X2 ) )
                                                                   => ( X1 = X2 ) ) )
                                                         => ( one
                                                           != ( d2term @ d_one ) ) )
                                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                       != ( d2term @ d_one ) ) )
                                                 => ( ( lam @ ( d2term @ d_one ) )
                                                   != ( d2term @ d_one ) ) )
                                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                               != ( d2term @ d_one ) ) )
                                         => ( id
                                           != ( d2subst @ d_id ) ) )
                                     => ( sh
                                       != ( d2subst @ d_id ) ) )
                                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                   != ( d2subst @ d_id ) ) )
                             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                               != ( d2subst @ d_id ) ) )
                         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                           != ( d2term @ d_one ) ) )
                     => ( hoaslam
                       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
                 => ( hoasinduction_p_and_p_prime
                   != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                        ! [X3: term] :
                          ( ( X2 @ X3 )
                          = ( X1 @ id @ X3 @ id ) ) ) ) )
             => ~ sP36 )
         => ( var @ ( d2term @ d_one ) ) )
     => ( pushprop_lem1v2 != sP34 ) ),
    introduced(assumption,[]) ).

thf(h230,assumption,
    pushprop_lem1_gthm,
    introduced(assumption,[]) ).

thf(h231,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                              ~ ! [X2: d_term] :
                                                                                  ( X1
                                                                                 != ( d2term @ X2 ) )
                                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                                            ( ( ( d2term @ X1 )
                                                                              = ( d2term @ X2 ) )
                                                                           => ( X1 = X2 ) ) )
                                                                 => ~ ! [X1: subst] :
                                                                        ~ ! [X2: d_subst] :
                                                                            ( X1
                                                                           != ( d2subst @ X2 ) ) )
                                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                                ( ( ( d2subst @ X1 )
                                                                  = ( d2subst @ X2 ) )
                                                               => ( X1 = X2 ) ) )
                                                     => ( one
                                                       != ( d2term @ d_one ) ) )
                                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                                   != ( d2term @ d_one ) ) )
                                             => ( ( lam @ ( d2term @ d_one ) )
                                               != ( d2term @ d_one ) ) )
                                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                           != ( d2term @ d_one ) ) )
                                     => ( id
                                       != ( d2subst @ d_id ) ) )
                                 => ( sh
                                   != ( d2subst @ d_id ) ) )
                             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                               != ( d2subst @ d_id ) ) )
                         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                           != ( d2subst @ d_id ) ) )
                     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                       != ( d2term @ d_one ) ) )
                 => ( hoaslam
                   != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
             => ( hoasinduction_p_and_p_prime
               != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                    ! [X3: term] :
                      ( ( X2 @ X3 )
                      = ( X1 @ id @ X3 @ id ) ) ) ) )
         => ~ sP36 )
     => ( var @ ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h232,assumption,
    pushprop_lem1v2 = sP34,
    introduced(assumption,[]) ).

thf(h233,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                          ~ ! [X2: d_term] :
                                                                              ( X1
                                                                             != ( d2term @ X2 ) )
                                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                                        ( ( ( d2term @ X1 )
                                                                          = ( d2term @ X2 ) )
                                                                       => ( X1 = X2 ) ) )
                                                             => ~ ! [X1: subst] :
                                                                    ~ ! [X2: d_subst] :
                                                                        ( X1
                                                                       != ( d2subst @ X2 ) ) )
                                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                                            ( ( ( d2subst @ X1 )
                                                              = ( d2subst @ X2 ) )
                                                           => ( X1 = X2 ) ) )
                                                 => ( one
                                                   != ( d2term @ d_one ) ) )
                                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                               != ( d2term @ d_one ) ) )
                                         => ( ( lam @ ( d2term @ d_one ) )
                                           != ( d2term @ d_one ) ) )
                                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                       != ( d2term @ d_one ) ) )
                                 => ( id
                                   != ( d2subst @ d_id ) ) )
                             => ( sh
                               != ( d2subst @ d_id ) ) )
                         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                           != ( d2subst @ d_id ) ) )
                     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                       != ( d2subst @ d_id ) ) )
                 => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
                   != ( d2term @ d_one ) ) )
             => ( hoaslam
               != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
         => ( hoasinduction_p_and_p_prime
           != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
                ! [X3: term] :
                  ( ( X2 @ X3 )
                  = ( X1 @ id @ X3 @ id ) ) ) ) )
     => ~ sP36 ),
    introduced(assumption,[]) ).

thf(h234,assumption,
    ~ ( var @ ( d2term @ d_one ) ),
    introduced(assumption,[]) ).

thf(h235,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                      ~ ! [X2: d_term] :
                                                                          ( X1
                                                                         != ( d2term @ X2 ) )
                                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                             => ~ ! [X1: d_term,X2: d_term] :
                                                                    ( ( ( d2term @ X1 )
                                                                      = ( d2term @ X2 ) )
                                                                   => ( X1 = X2 ) ) )
                                                         => ~ ! [X1: subst] :
                                                                ~ ! [X2: d_subst] :
                                                                    ( X1
                                                                   != ( d2subst @ X2 ) ) )
                                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                                        ( ( ( d2subst @ X1 )
                                                          = ( d2subst @ X2 ) )
                                                       => ( X1 = X2 ) ) )
                                             => ( one
                                               != ( d2term @ d_one ) ) )
                                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                           != ( d2term @ d_one ) ) )
                                     => ( ( lam @ ( d2term @ d_one ) )
                                       != ( d2term @ d_one ) ) )
                                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                                   != ( d2term @ d_one ) ) )
                             => ( id
                               != ( d2subst @ d_id ) ) )
                         => ( sh
                           != ( d2subst @ d_id ) ) )
                     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                       != ( d2subst @ d_id ) ) )
                 => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
                   != ( d2subst @ d_id ) ) )
             => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
               != ( d2term @ d_one ) ) )
         => ( hoaslam
           != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) )
     => ( hoasinduction_p_and_p_prime
       != ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
            ! [X3: term] :
              ( ( X2 @ X3 )
              = ( X1 @ id @ X3 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h236,assumption,
    sP36,
    introduced(assumption,[]) ).

thf(h237,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                                  ~ ! [X2: d_term] :
                                                                      ( X1
                                                                     != ( d2term @ X2 ) )
                                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                         => ~ ! [X1: d_term,X2: d_term] :
                                                                ( ( ( d2term @ X1 )
                                                                  = ( d2term @ X2 ) )
                                                               => ( X1 = X2 ) ) )
                                                     => ~ ! [X1: subst] :
                                                            ~ ! [X2: d_subst] :
                                                                ( X1
                                                               != ( d2subst @ X2 ) ) )
                                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                             => ~ ! [X1: d_subst,X2: d_subst] :
                                                    ( ( ( d2subst @ X1 )
                                                      = ( d2subst @ X2 ) )
                                                   => ( X1 = X2 ) ) )
                                         => ( one
                                           != ( d2term @ d_one ) ) )
                                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                       != ( d2term @ d_one ) ) )
                                 => ( ( lam @ ( d2term @ d_one ) )
                                   != ( d2term @ d_one ) ) )
                             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                               != ( d2term @ d_one ) ) )
                         => ( id
                           != ( d2subst @ d_id ) ) )
                     => ( sh
                       != ( d2subst @ d_id ) ) )
                 => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                   != ( d2subst @ d_id ) ) )
             => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
               != ( d2subst @ d_id ) ) )
         => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
           != ( d2term @ d_one ) ) )
     => ( hoaslam
       != ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ) ),
    introduced(assumption,[]) ).

thf(h238,assumption,
    ( hoasinduction_p_and_p_prime
    = ( ^ [X1: subst > term > subst > $o,X2: term > $o] :
        ! [X3: term] :
          ( ( X2 @ X3 )
          = ( X1 @ id @ X3 @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h239,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                              ~ ! [X2: d_term] :
                                                                  ( X1
                                                                 != ( d2term @ X2 ) )
                                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                     => ~ ! [X1: d_term,X2: d_term] :
                                                            ( ( ( d2term @ X1 )
                                                              = ( d2term @ X2 ) )
                                                           => ( X1 = X2 ) ) )
                                                 => ~ ! [X1: subst] :
                                                        ~ ! [X2: d_subst] :
                                                            ( X1
                                                           != ( d2subst @ X2 ) ) )
                                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                         => ~ ! [X1: d_subst,X2: d_subst] :
                                                ( ( ( d2subst @ X1 )
                                                  = ( d2subst @ X2 ) )
                                               => ( X1 = X2 ) ) )
                                     => ( one
                                       != ( d2term @ d_one ) ) )
                                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                                   != ( d2term @ d_one ) ) )
                             => ( ( lam @ ( d2term @ d_one ) )
                               != ( d2term @ d_one ) ) )
                         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                           != ( d2term @ d_one ) ) )
                     => ( id
                       != ( d2subst @ d_id ) ) )
                 => ( sh
                   != ( d2subst @ d_id ) ) )
             => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
               != ( d2subst @ d_id ) ) )
         => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
           != ( d2subst @ d_id ) ) )
     => ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
       != ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h240,assumption,
    ( hoaslam
    = ( ^ [X1: subst,X2: subst > term > term] : ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h241,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                          ~ ! [X2: d_term] :
                                                              ( X1
                                                             != ( d2term @ X2 ) )
                                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                                 => ~ ! [X1: d_term,X2: d_term] :
                                                        ( ( ( d2term @ X1 )
                                                          = ( d2term @ X2 ) )
                                                       => ( X1 = X2 ) ) )
                                             => ~ ! [X1: subst] :
                                                    ~ ! [X2: d_subst] :
                                                        ( X1
                                                       != ( d2subst @ X2 ) ) )
                                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                     => ~ ! [X1: d_subst,X2: d_subst] :
                                            ( ( ( d2subst @ X1 )
                                              = ( d2subst @ X2 ) )
                                           => ( X1 = X2 ) ) )
                                 => ( one
                                   != ( d2term @ d_one ) ) )
                             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                               != ( d2term @ d_one ) ) )
                         => ( ( lam @ ( d2term @ d_one ) )
                           != ( d2term @ d_one ) ) )
                     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                       != ( d2term @ d_one ) ) )
                 => ( id
                   != ( d2subst @ d_id ) ) )
             => ( sh
               != ( d2subst @ d_id ) ) )
         => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
           != ( d2subst @ d_id ) ) )
     => ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
       != ( d2subst @ d_id ) ) ),
    introduced(assumption,[]) ).

thf(h242,assumption,
    ( ( hoasap @ ( d2subst @ d_id ) @ ( d2term @ d_one ) @ ( d2subst @ d_id ) @ ( d2term @ d_one ) )
    = ( d2term @ d_one ) ),
    introduced(assumption,[]) ).

thf(h243,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                      ~ ! [X2: d_term] :
                                                          ( X1
                                                         != ( d2term @ X2 ) )
                                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                             => ~ ! [X1: d_term,X2: d_term] :
                                                    ( ( ( d2term @ X1 )
                                                      = ( d2term @ X2 ) )
                                                   => ( X1 = X2 ) ) )
                                         => ~ ! [X1: subst] :
                                                ~ ! [X2: d_subst] :
                                                    ( X1
                                                   != ( d2subst @ X2 ) ) )
                                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                                 => ~ ! [X1: d_subst,X2: d_subst] :
                                        ( ( ( d2subst @ X1 )
                                          = ( d2subst @ X2 ) )
                                       => ( X1 = X2 ) ) )
                             => ( one
                               != ( d2term @ d_one ) ) )
                         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                           != ( d2term @ d_one ) ) )
                     => ( ( lam @ ( d2term @ d_one ) )
                       != ( d2term @ d_one ) ) )
                 => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
                   != ( d2term @ d_one ) ) )
             => ( id
               != ( d2subst @ d_id ) ) )
         => ( sh
           != ( d2subst @ d_id ) ) )
     => ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
       != ( d2subst @ d_id ) ) ),
    introduced(assumption,[]) ).

thf(h244,assumption,
    ( ( comp @ ( d2subst @ d_id ) @ ( d2subst @ d_id ) )
    = ( d2subst @ d_id ) ),
    introduced(assumption,[]) ).

thf(h245,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                                  ~ ! [X2: d_term] :
                                                      ( X1
                                                     != ( d2term @ X2 ) )
                                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                         => ~ ! [X1: d_term,X2: d_term] :
                                                ( ( ( d2term @ X1 )
                                                  = ( d2term @ X2 ) )
                                               => ( X1 = X2 ) ) )
                                     => ~ ! [X1: subst] :
                                            ~ ! [X2: d_subst] :
                                                ( X1
                                               != ( d2subst @ X2 ) ) )
                                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                             => ~ ! [X1: d_subst,X2: d_subst] :
                                    ( ( ( d2subst @ X1 )
                                      = ( d2subst @ X2 ) )
                                   => ( X1 = X2 ) ) )
                         => ( one
                           != ( d2term @ d_one ) ) )
                     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                       != ( d2term @ d_one ) ) )
                 => ( ( lam @ ( d2term @ d_one ) )
                   != ( d2term @ d_one ) ) )
             => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
               != ( d2term @ d_one ) ) )
         => ( id
           != ( d2subst @ d_id ) ) )
     => ( sh
       != ( d2subst @ d_id ) ) ),
    introduced(assumption,[]) ).

thf(h246,assumption,
    ( ( push @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
    = ( d2subst @ d_id ) ),
    introduced(assumption,[]) ).

thf(h247,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                              ~ ! [X2: d_term] :
                                                  ( X1
                                                 != ( d2term @ X2 ) )
                                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                     => ~ ! [X1: d_term,X2: d_term] :
                                            ( ( ( d2term @ X1 )
                                              = ( d2term @ X2 ) )
                                           => ( X1 = X2 ) ) )
                                 => ~ ! [X1: subst] :
                                        ~ ! [X2: d_subst] :
                                            ( X1
                                           != ( d2subst @ X2 ) ) )
                             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                         => ~ ! [X1: d_subst,X2: d_subst] :
                                ( ( ( d2subst @ X1 )
                                  = ( d2subst @ X2 ) )
                               => ( X1 = X2 ) ) )
                     => ( one
                       != ( d2term @ d_one ) ) )
                 => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
                   != ( d2term @ d_one ) ) )
             => ( ( lam @ ( d2term @ d_one ) )
               != ( d2term @ d_one ) ) )
         => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
           != ( d2term @ d_one ) ) )
     => ( id
       != ( d2subst @ d_id ) ) ),
    introduced(assumption,[]) ).

thf(h248,assumption,
    ( sh
    = ( d2subst @ d_id ) ),
    introduced(assumption,[]) ).

thf(h249,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                          ~ ! [X2: d_term] :
                                              ( X1
                                             != ( d2term @ X2 ) )
                                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                                 => ~ ! [X1: d_term,X2: d_term] :
                                        ( ( ( d2term @ X1 )
                                          = ( d2term @ X2 ) )
                                       => ( X1 = X2 ) ) )
                             => ~ ! [X1: subst] :
                                    ~ ! [X2: d_subst] :
                                        ( X1
                                       != ( d2subst @ X2 ) ) )
                         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                     => ~ ! [X1: d_subst,X2: d_subst] :
                            ( ( ( d2subst @ X1 )
                              = ( d2subst @ X2 ) )
                           => ( X1 = X2 ) ) )
                 => ( one
                   != ( d2term @ d_one ) ) )
             => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
               != ( d2term @ d_one ) ) )
         => ( ( lam @ ( d2term @ d_one ) )
           != ( d2term @ d_one ) ) )
     => ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
       != ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h250,assumption,
    ( id
    = ( d2subst @ d_id ) ),
    introduced(assumption,[]) ).

thf(h251,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                      ~ ! [X2: d_term] :
                                          ( X1
                                         != ( d2term @ X2 ) )
                                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
                             => ~ ! [X1: d_term,X2: d_term] :
                                    ( ( ( d2term @ X1 )
                                      = ( d2term @ X2 ) )
                                   => ( X1 = X2 ) ) )
                         => ~ ! [X1: subst] :
                                ~ ! [X2: d_subst] :
                                    ( X1
                                   != ( d2subst @ X2 ) ) )
                     => ~ ! [X1: d_subst] : ( X1 = d_id ) )
                 => ~ ! [X1: d_subst,X2: d_subst] :
                        ( ( ( d2subst @ X1 )
                          = ( d2subst @ X2 ) )
                       => ( X1 = X2 ) ) )
             => ( one
               != ( d2term @ d_one ) ) )
         => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
           != ( d2term @ d_one ) ) )
     => ( ( lam @ ( d2term @ d_one ) )
       != ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h252,assumption,
    ( ( sub @ ( d2term @ d_one ) @ ( d2subst @ d_id ) )
    = ( d2term @ d_one ) ),
    introduced(assumption,[]) ).

thf(h253,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                                  ~ ! [X2: d_term] :
                                      ( X1
                                     != ( d2term @ X2 ) )
                             => ~ ! [X1: d_term] : ( X1 = d_one ) )
                         => ~ ! [X1: d_term,X2: d_term] :
                                ( ( ( d2term @ X1 )
                                  = ( d2term @ X2 ) )
                               => ( X1 = X2 ) ) )
                     => ~ ! [X1: subst] :
                            ~ ! [X2: d_subst] :
                                ( X1
                               != ( d2subst @ X2 ) ) )
                 => ~ ! [X1: d_subst] : ( X1 = d_id ) )
             => ~ ! [X1: d_subst,X2: d_subst] :
                    ( ( ( d2subst @ X1 )
                      = ( d2subst @ X2 ) )
                   => ( X1 = X2 ) ) )
         => ( one
           != ( d2term @ d_one ) ) )
     => ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
       != ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h254,assumption,
    ( ( lam @ ( d2term @ d_one ) )
    = ( d2term @ d_one ) ),
    introduced(assumption,[]) ).

thf(h255,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                              ~ ! [X2: d_term] :
                                  ( X1
                                 != ( d2term @ X2 ) )
                         => ~ ! [X1: d_term] : ( X1 = d_one ) )
                     => ~ ! [X1: d_term,X2: d_term] :
                            ( ( ( d2term @ X1 )
                              = ( d2term @ X2 ) )
                           => ( X1 = X2 ) ) )
                 => ~ ! [X1: subst] :
                        ~ ! [X2: d_subst] :
                            ( X1
                           != ( d2subst @ X2 ) ) )
             => ~ ! [X1: d_subst] : ( X1 = d_id ) )
         => ~ ! [X1: d_subst,X2: d_subst] :
                ( ( ( d2subst @ X1 )
                  = ( d2subst @ X2 ) )
               => ( X1 = X2 ) ) )
     => ( one
       != ( d2term @ d_one ) ) ),
    introduced(assumption,[]) ).

thf(h256,assumption,
    ( ( ap @ ( d2term @ d_one ) @ ( d2term @ d_one ) )
    = ( d2term @ d_one ) ),
    introduced(assumption,[]) ).

thf(h257,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                          ~ ! [X2: d_term] :
                              ( X1
                             != ( d2term @ X2 ) )
                     => ~ ! [X1: d_term] : ( X1 = d_one ) )
                 => ~ ! [X1: d_term,X2: d_term] :
                        ( ( ( d2term @ X1 )
                          = ( d2term @ X2 ) )
                       => ( X1 = X2 ) ) )
             => ~ ! [X1: subst] :
                    ~ ! [X2: d_subst] :
                        ( X1
                       != ( d2subst @ X2 ) ) )
         => ~ ! [X1: d_subst] : ( X1 = d_id ) )
     => ~ ! [X1: d_subst,X2: d_subst] :
            ( ( ( d2subst @ X1 )
              = ( d2subst @ X2 ) )
           => ( X1 = X2 ) ) ),
    introduced(assumption,[]) ).

thf(h258,assumption,
    ( one
    = ( d2term @ d_one ) ),
    introduced(assumption,[]) ).

thf(h259,assumption,
    ~ ( ~ ( ~ ( ~ ( ! [X1: term] :
                      ~ ! [X2: d_term] :
                          ( X1
                         != ( d2term @ X2 ) )
                 => ~ ! [X1: d_term] : ( X1 = d_one ) )
             => ~ ! [X1: d_term,X2: d_term] :
                    ( ( ( d2term @ X1 )
                      = ( d2term @ X2 ) )
                   => ( X1 = X2 ) ) )
         => ~ ! [X1: subst] :
                ~ ! [X2: d_subst] :
                    ( X1
                   != ( d2subst @ X2 ) ) )
     => ~ ! [X1: d_subst] : ( X1 = d_id ) ),
    introduced(assumption,[]) ).

thf(h260,assumption,
    ! [X1: d_subst,X2: d_subst] :
      ( ( ( d2subst @ X1 )
        = ( d2subst @ X2 ) )
     => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h261,assumption,
    ~ ( ~ ( ~ ( ! [X1: term] :
                  ~ ! [X2: d_term] :
                      ( X1
                     != ( d2term @ X2 ) )
             => ~ ! [X1: d_term] : ( X1 = d_one ) )
         => ~ ! [X1: d_term,X2: d_term] :
                ( ( ( d2term @ X1 )
                  = ( d2term @ X2 ) )
               => ( X1 = X2 ) ) )
     => ~ ! [X1: subst] :
            ~ ! [X2: d_subst] :
                ( X1
               != ( d2subst @ X2 ) ) ),
    introduced(assumption,[]) ).

thf(h262,assumption,
    ! [X1: d_subst] : ( X1 = d_id ),
    introduced(assumption,[]) ).

thf(h263,assumption,
    ~ ( ~ ( ! [X1: term] :
              ~ ! [X2: d_term] :
                  ( X1
                 != ( d2term @ X2 ) )
         => ~ ! [X1: d_term] : ( X1 = d_one ) )
     => ~ ! [X1: d_term,X2: d_term] :
            ( ( ( d2term @ X1 )
              = ( d2term @ X2 ) )
           => ( X1 = X2 ) ) ),
    introduced(assumption,[]) ).

thf(h264,assumption,
    ! [X1: subst] :
      ~ ! [X2: d_subst] :
          ( X1
         != ( d2subst @ X2 ) ),
    introduced(assumption,[]) ).

thf(h265,assumption,
    ~ ( ! [X1: term] :
          ~ ! [X2: d_term] :
              ( X1
             != ( d2term @ X2 ) )
     => ~ ! [X1: d_term] : ( X1 = d_one ) ),
    introduced(assumption,[]) ).

thf(h266,assumption,
    ! [X1: d_term,X2: d_term] :
      ( ( ( d2term @ X1 )
        = ( d2term @ X2 ) )
     => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h267,assumption,
    ! [X1: term] :
      ~ ! [X2: d_term] :
          ( X1
         != ( d2term @ X2 ) ),
    introduced(assumption,[]) ).

thf(h268,assumption,
    ! [X1: d_term] : ( X1 = d_one ),
    introduced(assumption,[]) ).

thf(h269,assumption,
    pushprop_lem1v2,
    introduced(assumption,[]) ).

thf(h270,assumption,
    sP34,
    introduced(assumption,[]) ).

thf(h271,assumption,
    ~ pushprop_lem1v2,
    introduced(assumption,[]) ).

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

thf(h273,assumption,
    shinj,
    introduced(assumption,[]) ).

thf(h274,assumption,
    ! [X1: term,X2: term] :
      ( ( ( sub @ X1 @ sh )
        = ( sub @ X2 @ sh ) )
     => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h275,assumption,
    ~ shinj,
    introduced(assumption,[]) ).

thf(h276,assumption,
    ~ ! [X1: term,X2: term] :
        ( ( ( sub @ X1 @ sh )
          = ( sub @ X2 @ sh ) )
       => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h277,assumption,
    induction2lem,
    introduced(assumption,[]) ).

thf(h278,assumption,
    ! [X1: term > $o,X2: term,X3: subst] :
      ( ~ ( ~ ( ! [X4: term,X5: term] :
                  ( ~ ( ( X1 @ X4 )
                     => ~ ( X1 @ X5 ) )
                 => ( X1 @ ( ap @ X4 @ X5 ) ) )
             => ~ ! [X4: term] :
                    ( ! [X5: term] :
                        ( ( X1 @ X5 )
                       => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                   => ( X1 @ ( lam @ X4 ) ) ) )
         => ~ ! [X4: term] :
                ( ( var @ X4 )
               => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
     => ( X1 @ ( sub @ X2 @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h279,assumption,
    ~ induction2lem,
    introduced(assumption,[]) ).

thf(h280,assumption,
    ~ ! [X1: term > $o,X2: term,X3: subst] :
        ( ~ ( ~ ( ! [X4: term,X5: term] :
                    ( ~ ( ( X1 @ X4 )
                       => ~ ( X1 @ X5 ) )
                   => ( X1 @ ( ap @ X4 @ X5 ) ) )
               => ~ ! [X4: term] :
                      ( ! [X5: term] :
                          ( ( X1 @ X5 )
                         => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                     => ( X1 @ ( lam @ X4 ) ) ) )
           => ~ ! [X4: term] :
                  ( ( var @ X4 )
                 => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
       => ( X1 @ ( sub @ X2 @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h281,assumption,
    hoasinduction_lem3v2_f,
    introduced(assumption,[]) ).

thf(h282,assumption,
    sP22,
    introduced(assumption,[]) ).

thf(h283,assumption,
    ~ hoasinduction_lem3v2_f,
    introduced(assumption,[]) ).

thf(h284,assumption,
    ~ sP22,
    introduced(assumption,[]) ).

thf(h285,assumption,
    hoasapinj2,
    introduced(assumption,[]) ).

thf(h286,assumption,
    sP26,
    introduced(assumption,[]) ).

thf(h287,assumption,
    ~ hoasapinj2,
    introduced(assumption,[]) ).

thf(h288,assumption,
    ~ sP26,
    introduced(assumption,[]) ).

thf(h289,assumption,
    hoasapinj1,
    introduced(assumption,[]) ).

thf(h290,assumption,
    ! [X1: term,X2: term,X3: term,X4: term] :
      ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
        = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
     => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h291,assumption,
    ~ hoasapinj1,
    introduced(assumption,[]) ).

thf(h292,assumption,
    ~ ! [X1: term,X2: term,X3: term,X4: term] :
        ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
          = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
       => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h293,assumption,
    induction2lem_lthm,
    introduced(assumption,[]) ).

thf(h294,assumption,
    ( ! [X1: term,X2: subst] :
        ( X1
        = ( sub @ one @ ( push @ X1 @ X2 ) ) )
   => ( ! [X1: term,X2: subst] :
          ( X2
          = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
     => ( sP17
       => ( ! [X1: term > $o,X2: term] :
              ( ~ ( ~ ( ! [X3: term] :
                          ( ( var @ X3 )
                         => ( X1 @ X3 ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ X3 )
                               => ~ ( X1 @ X4 ) )
                           => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ X3 )
                       => ( X1 @ ( lam @ X3 ) ) ) )
             => ( X1 @ X2 ) )
         => ! [X1: term > $o,X2: term,X3: subst] :
              ( ~ ( ~ ( ! [X4: term,X5: term] :
                          ( ~ ( ( X1 @ X4 )
                             => ~ ( X1 @ X5 ) )
                         => ( X1 @ ( ap @ X4 @ X5 ) ) )
                     => ~ ! [X4: term] :
                            ( ! [X5: term] :
                                ( ( X1 @ X5 )
                               => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                           => ( X1 @ ( lam @ X4 ) ) ) )
                 => ~ ! [X4: term] :
                        ( ( var @ X4 )
                       => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h295,assumption,
    ~ induction2lem_lthm,
    introduced(assumption,[]) ).

thf(h296,assumption,
    ~ ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( X2
            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
       => ( sP17
         => ( ! [X1: term > $o,X2: term] :
                ( ~ ( ~ ( ! [X3: term] :
                            ( ( var @ X3 )
                           => ( X1 @ X3 ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ X3 )
                                 => ~ ( X1 @ X4 ) )
                             => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
                   => ~ ! [X3: term] :
                          ( ( X1 @ X3 )
                         => ( X1 @ ( lam @ X3 ) ) ) )
               => ( X1 @ X2 ) )
           => ! [X1: term > $o,X2: term,X3: subst] :
                ( ~ ( ~ ( ! [X4: term,X5: term] :
                            ( ~ ( ( X1 @ X4 )
                               => ~ ( X1 @ X5 ) )
                           => ( X1 @ ( ap @ X4 @ X5 ) ) )
                       => ~ ! [X4: term] :
                              ( ! [X5: term] :
                                  ( ( X1 @ X5 )
                                 => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                             => ( X1 @ ( lam @ X4 ) ) ) )
                   => ~ ! [X4: term] :
                          ( ( var @ X4 )
                         => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h297,assumption,
    hoasinduction_lem3v2_f_lthm,
    introduced(assumption,[]) ).

thf(h298,assumption,
    ~ hoasinduction_lem3v2_f_lthm,
    introduced(assumption,[]) ).

thf(h299,assumption,
    hoasinduction_lthm,
    introduced(assumption,[]) ).

thf(h300,assumption,
    ( ! [X1: term > $o,X2: term] :
        ( ~ ( ~ ( ! [X3: term] :
                    ( ( var @ X3 )
                   => ( X1 @ X3 ) )
               => ~ ! [X3: term,X4: term] :
                      ( ~ ( ( X1 @ X3 )
                         => ~ ( X1 @ X4 ) )
                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
           => ~ ! [X3: term] :
                  ( ! [X4: term] :
                      ( ( X1 @ X4 )
                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                 => ( X1 @ ( lam @ X3 ) ) ) )
       => ( X1 @ X2 ) )
   => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                     => ~ ! [X4: term,X5: term] :
                            ( ~ ( ( X1 @ id @ X4 @ id )
                               => ~ ( X1 @ id @ X5 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                 => ~ ( X1 @ id @ X2 @ id ) )
             => ~ ( X1 @ id @ X3 @ id ) )
         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
     => ( ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X3: term] :
                      ( ( X1 @ id @ X3 @ id )
                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
           => ( X1 @ id @ ( lam @ X2 ) @ id ) )
       => ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                       => ~ ! [X3: term] :
                              ( ( var @ ( sub @ X3 @ id ) )
                             => ( X1 @ id @ X3 @ id ) ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ id @ X3 @ id )
                             => ~ ( X1 @ id @ X4 @ id ) )
                         => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
               => ~ ! [X3: subst > term > term] :
                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                         => ~ ! [X4: term] :
                                ( ( X1 @ id @ X4 @ id )
                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
           => ( X1 @ id @ X2 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h301,assumption,
    ~ hoasinduction_lthm,
    introduced(assumption,[]) ).

thf(h302,assumption,
    ~ ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) )
     => ( ! [X1: subst > term > subst > $o,X2: term,X3: term] :
            ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                               => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                           => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                  ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                                 => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                       => ~ ! [X4: term,X5: term] :
                              ( ~ ( ( X1 @ id @ X4 @ id )
                                 => ~ ( X1 @ id @ X5 @ id ) )
                             => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
                   => ~ ( X1 @ id @ X2 @ id ) )
               => ~ ( X1 @ id @ X3 @ id ) )
           => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) )
       => ( ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                     => ~ ! [X3: subst > term > term] :
                            ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                    ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                    = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                               => ~ ! [X4: term] :
                                      ( ( X1 @ id @ X4 @ id )
                                     => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
                 => ~ ! [X3: term] :
                        ( ( X1 @ id @ X3 @ id )
                       => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
             => ( X1 @ id @ ( lam @ X2 ) @ id ) )
         => ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( var @ ( sub @ X3 @ id ) )
                               => ( X1 @ id @ X3 @ id ) ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ id @ X3 @ id )
                               => ~ ( X1 @ id @ X4 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h303,assumption,
    hoasinduction_no_psi_cond_lthm,
    introduced(assumption,[]) ).

thf(h304,assumption,
    ( sP10
   => ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) )
     => ( ! [X1: term] :
            ( X1
            = ( sub @ X1 @ id ) )
       => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
              ( ~ ( ~ ( ! [X4: subst > term > term] :
                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X1 @ id @ X5 @ id )
                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                            = ( X1 @ id @ X4 @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
             => ( X2 @ ( lam @ X3 ) ) )
         => ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ! [X3: term,X4: term] :
                      ( ~ ( ( X1 @ id @ X3 @ id )
                         => ~ ( X1 @ id @ X4 @ id ) )
                     => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h305,assumption,
    ~ hoasinduction_no_psi_cond_lthm,
    introduced(assumption,[]) ).

thf(h306,assumption,
    ~ ( sP10
     => ( ! [X1: term > $o,X2: term] :
            ( ~ ( ~ ( ! [X3: term] :
                        ( ( var @ X3 )
                       => ( X1 @ X3 ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ X3 )
                             => ~ ( X1 @ X4 ) )
                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
               => ~ ! [X3: term] :
                      ( ! [X4: term] :
                          ( ( X1 @ X4 )
                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                     => ( X1 @ ( lam @ X3 ) ) ) )
           => ( X1 @ X2 ) )
       => ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                ( ~ ( ~ ( ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                              = ( X1 @ id @ X4 @ id ) ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
               => ( X2 @ ( lam @ X3 ) ) )
           => ! [X1: subst > term > subst > $o,X2: term] :
                ( ~ ( ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ id @ X3 @ id )
                           => ~ ( X1 @ id @ X4 @ id ) )
                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ( X1 @ id @ X2 @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h307,assumption,
    hoaslaminj,
    introduced(assumption,[]) ).

thf(h308,assumption,
    ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
      ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                  ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                  = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
             => ~ ! [X5: subst,X6: term,X7: subst] :
                    ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                    = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
         => ( ( lam @ ( X1 @ sh @ one ) )
           != ( lam @ ( X2 @ sh @ one ) ) ) )
     => ( ( X1 @ X3 @ X4 )
        = ( X2 @ X3 @ X4 ) ) ),
    introduced(assumption,[]) ).

thf(h309,assumption,
    ~ hoaslaminj,
    introduced(assumption,[]) ).

thf(h310,assumption,
    ~ ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
        ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                    ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                    = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
               => ~ ! [X5: subst,X6: term,X7: subst] :
                      ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                      = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
           => ( ( lam @ ( X1 @ sh @ one ) )
             != ( lam @ ( X2 @ sh @ one ) ) ) )
       => ( ( X1 @ X3 @ X4 )
          = ( X2 @ X3 @ X4 ) ) ),
    introduced(assumption,[]) ).

thf(h311,assumption,
    hoasinduction_lem3aaa,
    introduced(assumption,[]) ).

thf(h312,assumption,
    ! [X1: subst > term > subst > $o,X2: term] :
      ( ~ ( ! [X3: subst > term > term,X4: term] :
              ( ~ ( ~ ( ! [X5: term] :
                          ( ( X1 @ id @ X5 @ id )
                         => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                 => ~ ! [X5: subst,X6: term,X7: subst] :
                        ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                        = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
             => ~ ! [X5: subst,X6: term,X7: subst] :
                    ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                    = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
         => ~ ! [X3: term] :
                ( ( X1 @ id @ X3 @ id )
               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
     => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ),
    introduced(assumption,[]) ).

thf(h313,assumption,
    ~ hoasinduction_lem3aaa,
    introduced(assumption,[]) ).

thf(h314,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term] :
        ( ~ ( ! [X3: subst > term > term,X4: term] :
                ( ~ ( ~ ( ! [X5: term] :
                            ( ( X1 @ id @ X5 @ id )
                           => ( X1 @ id @ ( X3 @ id @ X5 ) @ id ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
                   => ~ ! [X5: subst,X6: term,X7: subst] :
                          ( ( sub @ ( X3 @ X5 @ X6 ) @ X7 )
                          = ( sub @ ( sub @ X4 @ ( push @ X6 @ X5 ) ) @ X7 ) ) )
               => ~ ! [X5: subst,X6: term,X7: subst] :
                      ( ( X3 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) )
                      = ( sub @ X4 @ ( push @ ( sub @ X6 @ X7 ) @ ( comp @ X5 @ X7 ) ) ) ) )
           => ~ ! [X3: term] :
                  ( ( X1 @ id @ X3 @ id )
                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
       => ( X1 @ id @ ( lam @ ( sub @ X2 @ ( push @ one @ sh ) ) ) @ id ) ),
    introduced(assumption,[]) ).

thf(h315,assumption,
    hoasinduction_lem3aa_lthm,
    introduced(assumption,[]) ).

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

thf(h317,assumption,
    ~ hoasinduction_lem3aa_lthm,
    introduced(assumption,[]) ).

thf(h318,assumption,
    ~ sP40,
    introduced(assumption,[]) ).

thf(h319,assumption,
    hoasinduction_lem3,
    introduced(assumption,[]) ).

thf(h320,assumption,
    ! [X1: subst > term > subst > $o,X2: term] :
      ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                      ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                     => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                 => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                        ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                       => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
             => ~ ! [X3: subst > term > term] :
                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                       => ~ ! [X4: term] :
                              ( ( X1 @ id @ X4 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
         => ~ ! [X3: term] :
                ( ( X1 @ id @ X3 @ id )
               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
     => ( X1 @ id @ ( lam @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h321,assumption,
    ~ hoasinduction_lem3,
    introduced(assumption,[]) ).

thf(h322,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term] :
        ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                        ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                       => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                   => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                          ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                         => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
               => ~ ! [X3: subst > term > term] :
                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                         => ~ ! [X4: term] :
                                ( ( X1 @ id @ X4 @ id )
                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
           => ~ ! [X3: term] :
                  ( ( X1 @ id @ X3 @ id )
                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
       => ( X1 @ id @ ( lam @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h323,assumption,
    hoasinduction_lem2,
    introduced(assumption,[]) ).

thf(h324,assumption,
    ! [X1: subst > term > subst > $o,X2: term,X3: term] :
      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                 => ~ ! [X4: term,X5: term] :
                        ( ~ ( ( X1 @ id @ X4 @ id )
                           => ~ ( X1 @ id @ X5 @ id ) )
                       => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
             => ~ ( X1 @ id @ X2 @ id ) )
         => ~ ( X1 @ id @ X3 @ id ) )
     => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h325,assumption,
    ~ hoasinduction_lem2,
    introduced(assumption,[]) ).

thf(h326,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term,X3: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                   => ~ ! [X4: term,X5: term] :
                          ( ~ ( ( X1 @ id @ X4 @ id )
                             => ~ ( X1 @ id @ X5 @ id ) )
                         => ( X1 @ id @ ( ap @ ( sub @ X4 @ id ) @ X5 ) @ id ) ) )
               => ~ ( X1 @ id @ X2 @ id ) )
           => ~ ( X1 @ id @ X3 @ id ) )
       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h327,assumption,
    termmset_lthm,
    introduced(assumption,[]) ).

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

thf(h329,assumption,
    ~ termmset_lthm,
    introduced(assumption,[]) ).

thf(h330,assumption,
    sP33,
    introduced(assumption,[]) ).

thf(h331,assumption,
    pushprop_lem1v2_lthm,
    introduced(assumption,[]) ).

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

thf(h333,assumption,
    ~ pushprop_lem1v2_lthm,
    introduced(assumption,[]) ).

thf(h334,assumption,
    ~ sP20,
    introduced(assumption,[]) ).

thf(h335,assumption,
    hoasinduction_lem0,
    introduced(assumption,[]) ).

thf(h336,assumption,
    sP10,
    introduced(assumption,[]) ).

thf(h337,assumption,
    ~ hoasinduction_lem0,
    introduced(assumption,[]) ).

thf(h338,assumption,
    ~ sP10,
    introduced(assumption,[]) ).

thf(h339,assumption,
    hoasinduction,
    introduced(assumption,[]) ).

thf(h340,assumption,
    ! [X1: subst > term > subst > $o,X2: term] :
      ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                 => ~ ! [X3: term] :
                        ( ( var @ ( sub @ X3 @ id ) )
                       => ( X1 @ id @ X3 @ id ) ) )
             => ~ ! [X3: term,X4: term] :
                    ( ~ ( ( X1 @ id @ X3 @ id )
                       => ~ ( X1 @ id @ X4 @ id ) )
                   => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
         => ~ ! [X3: subst > term > term] :
                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                   => ~ ! [X4: term] :
                          ( ( X1 @ id @ X4 @ id )
                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
     => ( X1 @ id @ X2 @ id ) ),
    introduced(assumption,[]) ).

thf(h341,assumption,
    ~ hoasinduction,
    introduced(assumption,[]) ).

thf(h342,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                   => ~ ! [X3: term] :
                          ( ( var @ ( sub @ X3 @ id ) )
                         => ( X1 @ id @ X3 @ id ) ) )
               => ~ ! [X3: term,X4: term] :
                      ( ~ ( ( X1 @ id @ X3 @ id )
                         => ~ ( X1 @ id @ X4 @ id ) )
                     => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
           => ~ ! [X3: subst > term > term] :
                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                     => ~ ! [X4: term] :
                            ( ( X1 @ id @ X4 @ id )
                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
       => ( X1 @ id @ X2 @ id ) ),
    introduced(assumption,[]) ).

thf(h343,assumption,
    hoasinduction_lem3b_lthm,
    introduced(assumption,[]) ).

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

thf(h345,assumption,
    ~ hoasinduction_lem3b_lthm,
    introduced(assumption,[]) ).

thf(h346,assumption,
    ~ sP9,
    introduced(assumption,[]) ).

thf(h347,assumption,
    induction,
    introduced(assumption,[]) ).

thf(h348,assumption,
    ! [X1: term > $o,X2: term] :
      ( ~ ( ~ ( ! [X3: term] :
                  ( ( var @ X3 )
                 => ( X1 @ X3 ) )
             => ~ ! [X3: term,X4: term] :
                    ( ~ ( ( X1 @ X3 )
                       => ~ ( X1 @ X4 ) )
                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
         => ~ ! [X3: term] :
                ( ( X1 @ X3 )
               => ( X1 @ ( lam @ X3 ) ) ) )
     => ( X1 @ X2 ) ),
    introduced(assumption,[]) ).

thf(h349,assumption,
    ~ induction,
    introduced(assumption,[]) ).

thf(h350,assumption,
    ~ ! [X1: term > $o,X2: term] :
        ( ~ ( ~ ( ! [X3: term] :
                    ( ( var @ X3 )
                   => ( X1 @ X3 ) )
               => ~ ! [X3: term,X4: term] :
                      ( ~ ( ( X1 @ X3 )
                         => ~ ( X1 @ X4 ) )
                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
           => ~ ! [X3: term] :
                  ( ( X1 @ X3 )
                 => ( X1 @ ( lam @ X3 ) ) ) )
       => ( X1 @ X2 ) ),
    introduced(assumption,[]) ).

thf(h351,assumption,
    hoasinduction_lem3a_lthm,
    introduced(assumption,[]) ).

thf(h352,assumption,
    ( ! [X1: term] :
        ( X1
        = ( sub @ X1 @ id ) )
   => ( sP40
     => ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ! [X3: subst > term > term] :
                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                     => ~ ! [X4: term] :
                            ( ( X1 @ id @ X4 @ id )
                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
             => ~ ! [X3: term] :
                    ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h353,assumption,
    ~ hoasinduction_lem3a_lthm,
    introduced(assumption,[]) ).

thf(h354,assumption,
    ~ ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( sP40
       => ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ! [X3: subst > term > term] :
                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                       => ~ ! [X4: term] :
                              ( ( X1 @ id @ X4 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
               => ~ ! [X3: term] :
                      ( ( X1 @ id @ X3 @ id )
                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h355,assumption,
    hoasinduction_lem3aa,
    introduced(assumption,[]) ).

thf(h356,assumption,
    ~ hoasinduction_lem3aa,
    introduced(assumption,[]) ).

thf(h357,assumption,
    hoasinduction_lem2v2,
    introduced(assumption,[]) ).

thf(h358,assumption,
    ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
      ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                              ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                             => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                         => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                               => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                     => ~ ! [X5: term,X6: term] :
                            ( ~ ( ( X1 @ id @ X5 @ id )
                               => ~ ( X1 @ id @ X6 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                 => ~ ! [X5: term] :
                        ( ( X2 @ X5 )
                        = ( X1 @ id @ X5 @ id ) ) )
             => ~ ( X2 @ X3 ) )
         => ~ ( X2 @ X4 ) )
     => ( X2 @ ( ap @ X3 @ X4 ) ) ),
    introduced(assumption,[]) ).

thf(h359,assumption,
    ~ hoasinduction_lem2v2,
    introduced(assumption,[]) ).

thf(h360,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term > $o,X3: term,X4: term] :
        ( ~ ( ~ ( ~ ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                ( ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) )
                               => ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 ) )
                           => ~ ! [X5: subst,X6: term,X7: subst,X8: subst] :
                                  ( ( X1 @ ( comp @ X5 @ X8 ) @ ( sub @ X6 @ X8 ) @ X7 )
                                 => ( X1 @ X5 @ X6 @ ( comp @ X8 @ X7 ) ) ) )
                       => ~ ! [X5: term,X6: term] :
                              ( ~ ( ( X1 @ id @ X5 @ id )
                                 => ~ ( X1 @ id @ X6 @ id ) )
                             => ( X1 @ id @ ( ap @ ( sub @ X5 @ id ) @ X6 ) @ id ) ) )
                   => ~ ! [X5: term] :
                          ( ( X2 @ X5 )
                          = ( X1 @ id @ X5 @ id ) ) )
               => ~ ( X2 @ X3 ) )
           => ~ ( X2 @ X4 ) )
       => ( X2 @ ( ap @ X3 @ X4 ) ) ),
    introduced(assumption,[]) ).

thf(h361,assumption,
    apinj2,
    introduced(assumption,[]) ).

thf(h362,assumption,
    ! [X1: term,X2: term,X3: term,X4: term] :
      ( ( ( ap @ X1 @ X3 )
        = ( ap @ X2 @ X4 ) )
     => ( X3 = X4 ) ),
    introduced(assumption,[]) ).

thf(h363,assumption,
    ~ apinj2,
    introduced(assumption,[]) ).

thf(h364,assumption,
    ~ ! [X1: term,X2: term,X3: term,X4: term] :
        ( ( ( ap @ X1 @ X3 )
          = ( ap @ X2 @ X4 ) )
       => ( X3 = X4 ) ),
    introduced(assumption,[]) ).

thf(h365,assumption,
    apinj1,
    introduced(assumption,[]) ).

thf(h366,assumption,
    ! [X1: term,X2: term,X3: term,X4: term] :
      ( ( ( ap @ X1 @ X3 )
        = ( ap @ X2 @ X4 ) )
     => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h367,assumption,
    ~ apinj1,
    introduced(assumption,[]) ).

thf(h368,assumption,
    ~ ! [X1: term,X2: term,X3: term,X4: term] :
        ( ( ( ap @ X1 @ X3 )
          = ( ap @ X2 @ X4 ) )
       => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h369,assumption,
    hoasapinj2_lthm,
    introduced(assumption,[]) ).

thf(h370,assumption,
    sP43,
    introduced(assumption,[]) ).

thf(h371,assumption,
    ~ hoasapinj2_lthm,
    introduced(assumption,[]) ).

thf(h372,assumption,
    ~ sP43,
    introduced(assumption,[]) ).

thf(h373,assumption,
    hoasinduction_lem3v2a,
    introduced(assumption,[]) ).

thf(h374,assumption,
    ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
      ( ~ ( ~ ( ! [X4: subst > term > term] :
                  ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                          ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                          = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                     => ~ ! [X5: term] :
                            ( ( X1 @ id @ X5 @ id )
                           => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                    = ( X1 @ id @ X4 @ id ) ) )
         => ~ ! [X4: term] :
                ( ( X2 @ X4 )
               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
     => ( X2 @ ( lam @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h375,assumption,
    ~ hoasinduction_lem3v2a,
    introduced(assumption,[]) ).

thf(h376,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
        ( ~ ( ~ ( ! [X4: subst > term > term] :
                    ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                            ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                            = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                       => ~ ! [X5: term] :
                              ( ( X1 @ id @ X5 @ id )
                             => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
               => ~ ! [X4: term] :
                      ( ( X2 @ X4 )
                      = ( X1 @ id @ X4 @ id ) ) )
           => ~ ! [X4: term] :
                  ( ( X2 @ X4 )
                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
       => ( X2 @ ( lam @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h377,assumption,
    hoasapinj1_lthm,
    introduced(assumption,[]) ).

thf(h378,assumption,
    ( ! [X1: term] :
        ( X1
        = ( sub @ X1 @ id ) )
   => ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ X1 @ X3 )
            = ( ap @ X2 @ X4 ) )
         => ( X1 = X2 ) )
     => ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
            = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
         => ( X1 = X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h379,assumption,
    ~ hoasapinj1_lthm,
    introduced(assumption,[]) ).

thf(h380,assumption,
    ~ ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( ! [X1: term,X2: term,X3: term,X4: term] :
            ( ( ( ap @ X1 @ X3 )
              = ( ap @ X2 @ X4 ) )
           => ( X1 = X2 ) )
       => ! [X1: term,X2: term,X3: term,X4: term] :
            ( ( ( ap @ ( sub @ X1 @ id ) @ X3 )
              = ( ap @ ( sub @ X2 @ id ) @ X4 ) )
           => ( X1 = X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h381,assumption,
    hoaslaminj_lthm,
    introduced(assumption,[]) ).

thf(h382,assumption,
    ( ! [X1: term,X2: subst] :
        ( X1
        = ( sub @ one @ ( push @ X1 @ X2 ) ) )
   => ( ! [X1: term,X2: subst] :
          ( X2
          = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: term] :
            ( ( ( lam @ X1 )
              = ( lam @ X2 ) )
           => ( X1 = X2 ) )
       => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
            ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                        ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                        = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                   => ~ ! [X5: subst,X6: term,X7: subst] :
                          ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                          = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
               => ( ( lam @ ( X1 @ sh @ one ) )
                 != ( lam @ ( X2 @ sh @ one ) ) ) )
           => ( ( X1 @ X3 @ X4 )
              = ( X2 @ X3 @ X4 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h383,assumption,
    ~ hoaslaminj_lthm,
    introduced(assumption,[]) ).

thf(h384,assumption,
    ~ ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( X2
            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
       => ( ! [X1: term,X2: term] :
              ( ( ( lam @ X1 )
                = ( lam @ X2 ) )
             => ( X1 = X2 ) )
         => ! [X1: subst > term > term,X2: subst > term > term,X3: subst,X4: term] :
              ( ~ ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                          ( ( sub @ ( X1 @ X5 @ X6 ) @ X7 )
                          = ( X1 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                     => ~ ! [X5: subst,X6: term,X7: subst] :
                            ( ( sub @ ( X2 @ X5 @ X6 ) @ X7 )
                            = ( X2 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) ) )
                 => ( ( lam @ ( X1 @ sh @ one ) )
                   != ( lam @ ( X2 @ sh @ one ) ) ) )
             => ( ( X1 @ X3 @ X4 )
                = ( X2 @ X3 @ X4 ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h385,assumption,
    axvarcons,
    introduced(assumption,[]) ).

thf(h386,assumption,
    ! [X1: term,X2: subst] :
      ( X1
      = ( sub @ one @ ( push @ X1 @ X2 ) ) ),
    introduced(assumption,[]) ).

thf(h387,assumption,
    ~ axvarcons,
    introduced(assumption,[]) ).

thf(h388,assumption,
    ~ ! [X1: term,X2: subst] :
        ( X1
        = ( sub @ one @ ( push @ X1 @ X2 ) ) ),
    introduced(assumption,[]) ).

thf(h389,assumption,
    axscons,
    introduced(assumption,[]) ).

thf(h390,assumption,
    ! [X1: subst] :
      ( X1
      = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ),
    introduced(assumption,[]) ).

thf(h391,assumption,
    ~ axscons,
    introduced(assumption,[]) ).

thf(h392,assumption,
    ~ ! [X1: subst] :
        ( X1
        = ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) ) ),
    introduced(assumption,[]) ).

thf(h393,assumption,
    axidr,
    introduced(assumption,[]) ).

thf(h394,assumption,
    sP17,
    introduced(assumption,[]) ).

thf(h395,assumption,
    ~ axidr,
    introduced(assumption,[]) ).

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

thf(h397,assumption,
    pushprop_lem1,
    introduced(assumption,[]) ).

thf(h398,assumption,
    sP12,
    introduced(assumption,[]) ).

thf(h399,assumption,
    ~ pushprop_lem1,
    introduced(assumption,[]) ).

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

thf(h401,assumption,
    laminj,
    introduced(assumption,[]) ).

thf(h402,assumption,
    ! [X1: term,X2: term] :
      ( ( ( lam @ X1 )
        = ( lam @ X2 ) )
     => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h403,assumption,
    ~ laminj,
    introduced(assumption,[]) ).

thf(h404,assumption,
    ~ ! [X1: term,X2: term] :
        ( ( ( lam @ X1 )
          = ( lam @ X2 ) )
       => ( X1 = X2 ) ),
    introduced(assumption,[]) ).

thf(h405,assumption,
    hoasinduction_lem3_lthm,
    introduced(assumption,[]) ).

thf(h406,assumption,
    ( ! [X1: term] :
        ( X1
        = ( sub @ X1 @ id ) )
   => ( sP40
     => ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                          ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                         => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                     => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                           => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ~ ! [X3: term] :
                    ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
         => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h407,assumption,
    ~ hoasinduction_lem3_lthm,
    introduced(assumption,[]) ).

thf(h408,assumption,
    ~ ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( sP40
       => ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                           => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                             => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X3: term] :
                      ( ( X1 @ id @ X3 @ id )
                     => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
           => ( X1 @ id @ ( lam @ X2 ) @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h409,assumption,
    pushprop_lem0,
    introduced(assumption,[]) ).

thf(h410,assumption,
    sP41,
    introduced(assumption,[]) ).

thf(h411,assumption,
    ~ pushprop_lem0,
    introduced(assumption,[]) ).

thf(h412,assumption,
    ~ sP41,
    introduced(assumption,[]) ).

thf(h413,assumption,
    hoasinduction_lem3v2a_lthm,
    introduced(assumption,[]) ).

thf(h414,assumption,
    ( sP22
   => ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
          ( ~ ( ~ ( ! [X4: subst > term > term] :
                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                         => ~ ! [X5: term] :
                                ( ( X1 @ id @ X5 @ id )
                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                        = ( X1 @ id @ X4 @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
         => ( X2 @ ( lam @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h415,assumption,
    ~ hoasinduction_lem3v2a_lthm,
    introduced(assumption,[]) ).

thf(h416,assumption,
    ~ ( sP22
     => ( ! [X1: term] :
            ( X1
            = ( sub @ X1 @ id ) )
       => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
            ( ~ ( ~ ( ! [X4: subst > term > term] :
                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                           => ~ ! [X5: term] :
                                  ( ( X1 @ id @ X5 @ id )
                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                          = ( X1 @ id @ X4 @ id ) ) )
               => ~ ! [X4: term] :
                      ( ( X2 @ X4 )
                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
           => ( X2 @ ( lam @ X3 ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h417,assumption,
    axidl,
    introduced(assumption,[]) ).

thf(h418,assumption,
    sP4,
    introduced(assumption,[]) ).

thf(h419,assumption,
    ~ axidl,
    introduced(assumption,[]) ).

thf(h420,assumption,
    ~ sP4,
    introduced(assumption,[]) ).

thf(h421,assumption,
    induction2_lthm,
    introduced(assumption,[]) ).

thf(h422,assumption,
    ( ! [X1: term] :
        ( X1
        = ( sub @ X1 @ id ) )
   => ( ! [X1: term > $o,X2: term,X3: subst] :
          ( ~ ( ~ ( ! [X4: term,X5: term] :
                      ( ~ ( ( X1 @ X4 )
                         => ~ ( X1 @ X5 ) )
                     => ( X1 @ ( ap @ X4 @ X5 ) ) )
                 => ~ ! [X4: term] :
                        ( ! [X5: term] :
                            ( ( X1 @ X5 )
                           => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                       => ( X1 @ ( lam @ X4 ) ) ) )
             => ~ ! [X4: term] :
                    ( ( var @ X4 )
                   => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
         => ( X1 @ ( sub @ X2 @ X3 ) ) )
     => ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h423,assumption,
    ~ induction2_lthm,
    introduced(assumption,[]) ).

thf(h424,assumption,
    ~ ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( ! [X1: term > $o,X2: term,X3: subst] :
            ( ~ ( ~ ( ! [X4: term,X5: term] :
                        ( ~ ( ( X1 @ X4 )
                           => ~ ( X1 @ X5 ) )
                       => ( X1 @ ( ap @ X4 @ X5 ) ) )
                   => ~ ! [X4: term] :
                          ( ! [X5: term] :
                              ( ( X1 @ X5 )
                             => ( X1 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
                         => ( X1 @ ( lam @ X4 ) ) ) )
               => ~ ! [X4: term] :
                      ( ( var @ X4 )
                     => ( X1 @ ( sub @ X4 @ X3 ) ) ) )
           => ( X1 @ ( sub @ X2 @ X3 ) ) )
       => ! [X1: term > $o,X2: term] :
            ( ~ ( ~ ( ! [X3: term] :
                        ( ( var @ X3 )
                       => ( X1 @ X3 ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ X3 )
                             => ~ ( X1 @ X4 ) )
                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
               => ~ ! [X3: term] :
                      ( ! [X4: term] :
                          ( ( X1 @ X4 )
                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                     => ( X1 @ ( lam @ X3 ) ) ) )
           => ( X1 @ X2 ) ) ) ),
    introduced(assumption,[]) ).

thf(h425,assumption,
    hoasinduction_lem0_lthm,
    introduced(assumption,[]) ).

thf(h426,assumption,
    ~ hoasinduction_lem0_lthm,
    introduced(assumption,[]) ).

thf(h427,assumption,
    substmonoid_lthm,
    introduced(assumption,[]) ).

thf(h428,assumption,
    ( sP4
   => ( sP17
     => ~ sP11 ) ),
    introduced(assumption,[]) ).

thf(h429,assumption,
    ~ substmonoid_lthm,
    introduced(assumption,[]) ).

thf(h430,assumption,
    ~ ( sP4
     => ( sP17
       => ~ sP11 ) ),
    introduced(assumption,[]) ).

thf(h431,assumption,
    hoasinduction_lem3b,
    introduced(assumption,[]) ).

thf(h432,assumption,
    ~ hoasinduction_lem3b,
    introduced(assumption,[]) ).

thf(h433,assumption,
    substmonoid,
    introduced(assumption,[]) ).

thf(h434,assumption,
    ~ sP11,
    introduced(assumption,[]) ).

thf(h435,assumption,
    ~ substmonoid,
    introduced(assumption,[]) ).

thf(h436,assumption,
    sP11,
    introduced(assumption,[]) ).

thf(h437,assumption,
    hoasinduction_lem3a,
    introduced(assumption,[]) ).

thf(h438,assumption,
    ! [X1: subst > term > subst > $o,X2: term] :
      ( ~ ( ! [X3: subst > term > term] :
              ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                      ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                      = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                 => ~ ! [X4: term] :
                        ( ( X1 @ id @ X4 @ id )
                       => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
             => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
         => ~ ! [X3: term] :
                ( ( X1 @ id @ X3 @ id )
               => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
     => ( X1 @ id @ ( lam @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h439,assumption,
    ~ hoasinduction_lem3a,
    introduced(assumption,[]) ).

thf(h440,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term] :
        ( ~ ( ! [X3: subst > term > term] :
                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                   => ~ ! [X4: term] :
                          ( ( X1 @ id @ X4 @ id )
                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) )
           => ~ ! [X3: term] :
                  ( ( X1 @ id @ X3 @ id )
                 => ( X1 @ id @ ( sub @ X2 @ ( push @ X3 @ id ) ) @ id ) ) )
       => ( X1 @ id @ ( lam @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h441,assumption,
    hoasinduction_no_psi_cond,
    introduced(assumption,[]) ).

thf(h442,assumption,
    ! [X1: subst > term > subst > $o,X2: term] :
      ( ~ ( ! [X3: term,X4: term] :
              ( ~ ( ( X1 @ id @ X3 @ id )
                 => ~ ( X1 @ id @ X4 @ id ) )
             => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
         => ~ ! [X3: subst > term > term] :
                ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                        ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                        = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                   => ~ ! [X4: term] :
                          ( ( X1 @ id @ X4 @ id )
                         => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
               => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
     => ( X1 @ id @ X2 @ id ) ),
    introduced(assumption,[]) ).

thf(h443,assumption,
    ~ hoasinduction_no_psi_cond,
    introduced(assumption,[]) ).

thf(h444,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term] :
        ( ~ ( ! [X3: term,X4: term] :
                ( ~ ( ( X1 @ id @ X3 @ id )
                   => ~ ( X1 @ id @ X4 @ id ) )
               => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) )
           => ~ ! [X3: subst > term > term] :
                  ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                          ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                          = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                     => ~ ! [X4: term] :
                            ( ( X1 @ id @ X4 @ id )
                           => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                 => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
       => ( X1 @ id @ X2 @ id ) ),
    introduced(assumption,[]) ).

thf(h445,assumption,
    hoaslamnotap,
    introduced(assumption,[]) ).

thf(h446,assumption,
    ! [X1: subst > term > term,X2: term,X3: term] :
      ( ! [X4: subst,X5: term,X6: subst] :
          ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
          = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
     => ( ( lam @ ( X1 @ sh @ one ) )
       != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h447,assumption,
    ~ hoaslamnotap,
    introduced(assumption,[]) ).

thf(h448,assumption,
    ~ ! [X1: subst > term > term,X2: term,X3: term] :
        ( ! [X4: subst,X5: term,X6: subst] :
            ( ( sub @ ( X1 @ X4 @ X5 ) @ X6 )
            = ( X1 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
       => ( ( lam @ ( X1 @ sh @ one ) )
         != ( ap @ ( sub @ X2 @ id ) @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h449,assumption,
    induction2,
    introduced(assumption,[]) ).

thf(h450,assumption,
    ! [X1: term > $o,X2: term] :
      ( ~ ( ~ ( ! [X3: term] :
                  ( ( var @ X3 )
                 => ( X1 @ X3 ) )
             => ~ ! [X3: term,X4: term] :
                    ( ~ ( ( X1 @ X3 )
                       => ~ ( X1 @ X4 ) )
                   => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
         => ~ ! [X3: term] :
                ( ! [X4: term] :
                    ( ( X1 @ X4 )
                   => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
               => ( X1 @ ( lam @ X3 ) ) ) )
     => ( X1 @ X2 ) ),
    introduced(assumption,[]) ).

thf(h451,assumption,
    ~ induction2,
    introduced(assumption,[]) ).

thf(h452,assumption,
    ~ ! [X1: term > $o,X2: term] :
        ( ~ ( ~ ( ! [X3: term] :
                    ( ( var @ X3 )
                   => ( X1 @ X3 ) )
               => ~ ! [X3: term,X4: term] :
                      ( ~ ( ( X1 @ X3 )
                         => ~ ( X1 @ X4 ) )
                     => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
           => ~ ! [X3: term] :
                  ( ! [X4: term] :
                      ( ( X1 @ X4 )
                     => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                 => ( X1 @ ( lam @ X3 ) ) ) )
       => ( X1 @ X2 ) ),
    introduced(assumption,[]) ).

thf(h453,assumption,
    pushprop_lem1_lthm,
    introduced(assumption,[]) ).

thf(h454,assumption,
    ( ! [X1: term,X2: subst] :
        ( X1
        = ( sub @ one @ ( push @ X1 @ X2 ) ) )
   => ( ! [X1: term,X2: subst] :
          ( X2
          = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
     => sP12 ) ),
    introduced(assumption,[]) ).

thf(h455,assumption,
    ~ pushprop_lem1_lthm,
    introduced(assumption,[]) ).

thf(h456,assumption,
    ~ ( ! [X1: term,X2: subst] :
          ( X1
          = ( sub @ one @ ( push @ X1 @ X2 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( X2
            = ( comp @ sh @ ( push @ X1 @ X2 ) ) )
       => sP12 ) ),
    introduced(assumption,[]) ).

thf(h457,assumption,
    hoasinduction_lem3v2,
    introduced(assumption,[]) ).

thf(h458,assumption,
    ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
      ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                          ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                         => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                     => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                            ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                           => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                 => ~ ! [X4: subst > term > term] :
                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                           => ~ ! [X5: term] :
                                  ( ( X1 @ id @ X5 @ id )
                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                    = ( X1 @ id @ X4 @ id ) ) )
         => ~ ! [X4: term] :
                ( ( X2 @ X4 )
               => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
     => ( X2 @ ( lam @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h459,assumption,
    ~ hoasinduction_lem3v2,
    introduced(assumption,[]) ).

thf(h460,assumption,
    ~ ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                   => ~ ! [X4: subst > term > term] :
                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X1 @ id @ X5 @ id )
                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X4: term] :
                      ( ( X2 @ X4 )
                      = ( X1 @ id @ X4 @ id ) ) )
           => ~ ! [X4: term] :
                  ( ( X2 @ X4 )
                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
       => ( X2 @ ( lam @ X3 ) ) ),
    introduced(assumption,[]) ).

thf(h461,assumption,
    axshiftcons,
    introduced(assumption,[]) ).

thf(h462,assumption,
    ! [X1: term,X2: subst] :
      ( X2
      = ( comp @ sh @ ( push @ X1 @ X2 ) ) ),
    introduced(assumption,[]) ).

thf(h463,assumption,
    ~ axshiftcons,
    introduced(assumption,[]) ).

thf(h464,assumption,
    ~ ! [X1: term,X2: subst] :
        ( X2
        = ( comp @ sh @ ( push @ X1 @ X2 ) ) ),
    introduced(assumption,[]) ).

thf(h465,assumption,
    termmset,
    introduced(assumption,[]) ).

thf(h466,assumption,
    ! [X1: term] :
      ( X1
      = ( sub @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h467,assumption,
    ~ termmset,
    introduced(assumption,[]) ).

thf(h468,assumption,
    ~ ! [X1: term] :
        ( X1
        = ( sub @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h469,assumption,
    pushprop_lem0_lthm,
    introduced(assumption,[]) ).

thf(h470,assumption,
    ~ pushprop_lem0_lthm,
    introduced(assumption,[]) ).

thf(h471,assumption,
    hoasinduction_lem3v2_lthm,
    introduced(assumption,[]) ).

thf(h472,assumption,
    ( ! [X1: term] :
        ( X1
        = ( sub @ X1 @ id ) )
   => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                            ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                           => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                       => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                             => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                   => ~ ! [X4: subst > term > term] :
                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X1 @ id @ X5 @ id )
                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X4: term] :
                      ( ( X2 @ X4 )
                      = ( X1 @ id @ X4 @ id ) ) )
           => ~ ! [X4: term] :
                  ( ( X2 @ X4 )
                 => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
       => ( X2 @ ( lam @ X3 ) ) ) ),
    introduced(assumption,[]) ).

thf(h473,assumption,
    ~ hoasinduction_lem3v2_lthm,
    introduced(assumption,[]) ).

thf(h474,assumption,
    ~ ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X4: subst,X5: term,X6: subst,X7: subst] :
                              ( ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) )
                             => ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 ) )
                         => ~ ! [X4: subst,X5: term,X6: subst,X7: subst] :
                                ( ( X1 @ ( comp @ X4 @ X7 ) @ ( sub @ X5 @ X7 ) @ X6 )
                               => ( X1 @ X4 @ X5 @ ( comp @ X7 @ X6 ) ) ) )
                     => ~ ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                        = ( X1 @ id @ X4 @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
         => ( X2 @ ( lam @ X3 ) ) ) ),
    introduced(assumption,[]) ).

thf(h475,assumption,
    axvarid,
    introduced(assumption,[]) ).

thf(h476,assumption,
    ~ axvarid,
    introduced(assumption,[]) ).

thf(h477,assumption,
    hoasinduction_lthm_3,
    introduced(assumption,[]) ).

thf(h478,assumption,
    ( sP10
   => ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) )
     => ( ! [X1: term] :
            ( X1
            = ( sub @ X1 @ id ) )
       => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
              ( ~ ( ~ ( ! [X4: subst > term > term] :
                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X1 @ id @ X5 @ id )
                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                            = ( X1 @ id @ X4 @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
             => ( X2 @ ( lam @ X3 ) ) )
         => ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( var @ ( sub @ X3 @ id ) )
                               => ( X1 @ id @ X3 @ id ) ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ id @ X3 @ id )
                               => ~ ( X1 @ id @ X4 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h479,assumption,
    ~ hoasinduction_lthm_3,
    introduced(assumption,[]) ).

thf(h480,assumption,
    ~ ( sP10
     => ( ! [X1: term > $o,X2: term] :
            ( ~ ( ~ ( ! [X3: term] :
                        ( ( var @ X3 )
                       => ( X1 @ X3 ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ X3 )
                             => ~ ( X1 @ X4 ) )
                         => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
               => ~ ! [X3: term] :
                      ( ! [X4: term] :
                          ( ( X1 @ X4 )
                         => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                     => ( X1 @ ( lam @ X3 ) ) ) )
           => ( X1 @ X2 ) )
       => ( ! [X1: term] :
              ( X1
              = ( sub @ X1 @ id ) )
         => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
                ( ~ ( ~ ( ! [X4: subst > term > term] :
                            ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                    ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                    = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                               => ~ ! [X5: term] :
                                      ( ( X1 @ id @ X5 @ id )
                                     => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                           => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                       => ~ ! [X4: term] :
                              ( ( X2 @ X4 )
                              = ( X1 @ id @ X4 @ id ) ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                         => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
               => ( X2 @ ( lam @ X3 ) ) )
           => ! [X1: subst > term > subst > $o,X2: term] :
                ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                   => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                               => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                      ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                     => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                           => ~ ! [X3: term] :
                                  ( ( var @ ( sub @ X3 @ id ) )
                                 => ( X1 @ id @ X3 @ id ) ) )
                       => ~ ! [X3: term,X4: term] :
                              ( ~ ( ( X1 @ id @ X3 @ id )
                                 => ~ ( X1 @ id @ X4 @ id ) )
                             => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( X1 @ id @ X4 @ id )
                                   => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ( X1 @ id @ X2 @ id ) ) ) ) ) ),
    introduced(assumption,[]) ).

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

thf(2,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(3,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(4,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(5,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(6,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(7,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h477,h478,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[1,2,3,4,5,6,h14,h15,h398]) ).

thf(h481,assumption,
    ~ ( ! [X1: term > $o,X2: term] :
          ( ~ ( ~ ( ! [X3: term] :
                      ( ( var @ X3 )
                     => ( X1 @ X3 ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ X3 )
                           => ~ ( X1 @ X4 ) )
                       => ( X1 @ ( ap @ X3 @ X4 ) ) ) )
             => ~ ! [X3: term] :
                    ( ! [X4: term] :
                        ( ( X1 @ X4 )
                       => ( X1 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
                   => ( X1 @ ( lam @ X3 ) ) ) )
         => ( X1 @ X2 ) )
     => ( ! [X1: term] :
            ( X1
            = ( sub @ X1 @ id ) )
       => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
              ( ~ ( ~ ( ! [X4: subst > term > term] :
                          ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                  ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                  = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                             => ~ ! [X5: term] :
                                    ( ( X1 @ id @ X5 @ id )
                                   => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                         => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                     => ~ ! [X4: term] :
                            ( ( X2 @ X4 )
                            = ( X1 @ id @ X4 @ id ) ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                       => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
             => ( X2 @ ( lam @ X3 ) ) )
         => ! [X1: subst > term > subst > $o,X2: term] :
              ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                                 => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                             => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                    ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                   => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                         => ~ ! [X3: term] :
                                ( ( var @ ( sub @ X3 @ id ) )
                               => ( X1 @ id @ X3 @ id ) ) )
                     => ~ ! [X3: term,X4: term] :
                            ( ~ ( ( X1 @ id @ X3 @ id )
                               => ~ ( X1 @ id @ X4 @ id ) )
                           => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
                 => ~ ! [X3: subst > term > term] :
                        ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                           => ~ ! [X4: term] :
                                  ( ( X1 @ id @ X4 @ id )
                                 => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
             => ( X1 @ id @ X2 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h482,assumption,
    ~ ( ! [X1: term] :
          ( X1
          = ( sub @ X1 @ id ) )
     => ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
            ( ~ ( ~ ( ! [X4: subst > term > term] :
                        ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                                ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                                = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                           => ~ ! [X5: term] :
                                  ( ( X1 @ id @ X5 @ id )
                                 => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                       => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                   => ~ ! [X4: term] :
                          ( ( X2 @ X4 )
                          = ( X1 @ id @ X4 @ id ) ) )
               => ~ ! [X4: term] :
                      ( ( X2 @ X4 )
                     => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
           => ( X2 @ ( lam @ X3 ) ) )
       => ! [X1: subst > term > subst > $o,X2: term] :
            ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                               => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                           => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                  ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                                 => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                       => ~ ! [X3: term] :
                              ( ( var @ ( sub @ X3 @ id ) )
                             => ( X1 @ id @ X3 @ id ) ) )
                   => ~ ! [X3: term,X4: term] :
                          ( ~ ( ( X1 @ id @ X3 @ id )
                             => ~ ( X1 @ id @ X4 @ id ) )
                         => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
               => ~ ! [X3: subst > term > term] :
                      ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                              ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                              = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                         => ~ ! [X4: term] :
                                ( ( X1 @ id @ X4 @ id )
                               => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
           => ( X1 @ id @ X2 @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h483,assumption,
    ~ ( ! [X1: subst > term > subst > $o,X2: term > $o,X3: term] :
          ( ~ ( ~ ( ! [X4: subst > term > term] :
                      ( ~ ( ! [X5: subst,X6: term,X7: subst] :
                              ( ( sub @ ( X4 @ X5 @ X6 ) @ X7 )
                              = ( X4 @ ( comp @ X5 @ X7 ) @ ( sub @ X6 @ X7 ) ) )
                         => ~ ! [X5: term] :
                                ( ( X1 @ id @ X5 @ id )
                               => ( X1 @ id @ ( X4 @ id @ X5 ) @ id ) ) )
                     => ( X1 @ id @ ( lam @ ( X4 @ sh @ one ) ) @ id ) )
                 => ~ ! [X4: term] :
                        ( ( X2 @ X4 )
                        = ( X1 @ id @ X4 @ id ) ) )
             => ~ ! [X4: term] :
                    ( ( X2 @ X4 )
                   => ( X2 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) ) )
         => ( X2 @ ( lam @ X3 ) ) )
     => ! [X1: subst > term > subst > $o,X2: term] :
          ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                             => ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                         => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                                ( ( X1 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                               => ( X1 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                     => ~ ! [X3: term] :
                            ( ( var @ ( sub @ X3 @ id ) )
                           => ( X1 @ id @ X3 @ id ) ) )
                 => ~ ! [X3: term,X4: term] :
                        ( ~ ( ( X1 @ id @ X3 @ id )
                           => ~ ( X1 @ id @ X4 @ id ) )
                       => ( X1 @ id @ ( ap @ ( sub @ X3 @ id ) @ X4 ) @ id ) ) )
             => ~ ! [X3: subst > term > term] :
                    ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                            ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                            = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                       => ~ ! [X4: term] :
                              ( ( X1 @ id @ X4 @ id )
                             => ( X1 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                   => ( X1 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
         => ( X1 @ id @ X2 @ id ) ) ),
    introduced(assumption,[]) ).

thf(h484,assumption,
    ~ ! [X1: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                            ( ( eigen__114 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                           => ( eigen__114 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                       => ~ ! [X2: subst,X3: term,X4: subst,X5: subst] :
                              ( ( eigen__114 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                             => ( eigen__114 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) ) )
                   => ~ ! [X2: term] :
                          ( ( var @ ( sub @ X2 @ id ) )
                         => ( eigen__114 @ id @ X2 @ id ) ) )
               => ~ ! [X2: term,X3: term] :
                      ( ~ ( ( eigen__114 @ id @ X2 @ id )
                         => ~ ( eigen__114 @ id @ X3 @ id ) )
                     => ( eigen__114 @ id @ ( ap @ ( sub @ X2 @ id ) @ X3 ) @ id ) ) )
           => ~ ! [X2: subst > term > term] :
                  ( ~ ( ! [X3: subst,X4: term,X5: subst] :
                          ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                          = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                     => ~ ! [X3: term] :
                            ( ( eigen__114 @ id @ X3 @ id )
                           => ( eigen__114 @ id @ ( X2 @ id @ X3 ) @ id ) ) )
                 => ( eigen__114 @ id @ ( lam @ ( X2 @ sh @ one ) ) @ id ) ) )
       => ( eigen__114 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h485,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                          ( ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                         => ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                            ( ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                           => ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
                 => ~ ! [X1: term] :
                        ( ( var @ ( sub @ X1 @ id ) )
                       => ( eigen__114 @ id @ X1 @ id ) ) )
             => ~ ! [X1: term,X2: term] :
                    ( ~ ( ( eigen__114 @ id @ X1 @ id )
                       => ~ ( eigen__114 @ id @ X2 @ id ) )
                   => ( eigen__114 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) )
         => ~ ! [X1: subst > term > term] :
                ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                        ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                        = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                   => ~ ! [X2: term] :
                          ( ( eigen__114 @ id @ X2 @ id )
                         => ( eigen__114 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
               => ( eigen__114 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) )
     => ( eigen__114 @ id @ eigen__115 @ id ) ),
    introduced(assumption,[]) ).

thf(h486,assumption,
    ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                      ( ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                     => ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                 => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                        ( ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                       => ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
             => ~ ! [X1: term] :
                    ( ( var @ ( sub @ X1 @ id ) )
                   => ( eigen__114 @ id @ X1 @ id ) ) )
         => ~ ! [X1: term,X2: term] :
                ( ~ ( ( eigen__114 @ id @ X1 @ id )
                   => ~ ( eigen__114 @ id @ X2 @ id ) )
               => ( eigen__114 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) )
     => ~ ! [X1: subst > term > term] :
            ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                    ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                    = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
               => ~ ! [X2: term] :
                      ( ( eigen__114 @ id @ X2 @ id )
                     => ( eigen__114 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
           => ( eigen__114 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h487,assumption,
    ~ ( eigen__114 @ id @ eigen__115 @ id ),
    introduced(assumption,[]) ).

thf(h488,assumption,
    ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                  ( ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                 => ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
             => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                    ( ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                   => ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
         => ~ ! [X1: term] :
                ( ( var @ ( sub @ X1 @ id ) )
               => ( eigen__114 @ id @ X1 @ id ) ) )
     => ~ ! [X1: term,X2: term] :
            ( ~ ( ( eigen__114 @ id @ X1 @ id )
               => ~ ( eigen__114 @ id @ X2 @ id ) )
           => ( eigen__114 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h489,assumption,
    ! [X1: subst > term > term] :
      ( ~ ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ~ ! [X2: term] :
                ( ( eigen__114 @ id @ X2 @ id )
               => ( eigen__114 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
     => ( eigen__114 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ),
    introduced(assumption,[]) ).

thf(h490,assumption,
    ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
              ( ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
             => ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
         => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                ( ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
               => ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
     => ~ ! [X1: term] :
            ( ( var @ ( sub @ X1 @ id ) )
           => ( eigen__114 @ id @ X1 @ id ) ) ),
    introduced(assumption,[]) ).

thf(h491,assumption,
    ! [X1: term,X2: term] :
      ( ~ ( ( eigen__114 @ id @ X1 @ id )
         => ~ ( eigen__114 @ id @ X2 @ id ) )
     => ( eigen__114 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h492,assumption,
    ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
          ( ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
         => ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
            ( ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
           => ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) ),
    introduced(assumption,[]) ).

thf(h493,assumption,
    ! [X1: term] :
      ( ( var @ ( sub @ X1 @ id ) )
     => ( eigen__114 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h494,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
     => ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) ),
    introduced(assumption,[]) ).

thf(h495,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__114 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
     => ( eigen__114 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ),
    introduced(assumption,[]) ).

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

thf(9,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(10,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(11,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(12,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(13,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(14,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h494,h495,h492,h493,h490,h491,h488,h489,h486,h487,h485,h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[8,9,10,11,12,13,h14,h15,h398]) ).

thf(15,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h492,h493,h490,h491,h488,h489,h486,h487,h485,h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h494,h495])],[h492,14,h494,h495]) ).

thf(16,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h490,h491,h488,h489,h486,h487,h485,h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h492,h493])],[h490,15,h492,h493]) ).

thf(17,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h488,h489,h486,h487,h485,h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h490,h491])],[h488,16,h490,h491]) ).

thf(18,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h486,h487,h485,h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h488,h489])],[h486,17,h488,h489]) ).

thf(19,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h485,h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h486,h487])],[h485,18,h486,h487]) ).

thf(20,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h484,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h485]),tab_negall(eigenvar,eigen__115)],[h484,19,h485]) ).

thf(21,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h484]),tab_negall(eigenvar,eigen__114)],[h342,20,h484]) ).

thf(22,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h374,h342])],[h483,21,h374,h342]) ).

thf(23,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h450,h482,h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h466,h483])],[h482,22,h466,h483]) ).

thf(24,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h336,h481,h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h450,h482])],[h481,23,h450,h482]) ).

thf(25,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h479,h480,h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h336,h481])],[h480,24,h336,h481]) ).

thf(26,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h475,h466,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h477,h478]),tab_bq(discharge,[h479,h480])],[h17,7,25,h477,h478,h479,h480]) ).

thf(h496,assumption,
    ( eigen__125
   != ( sub @ eigen__125 @ id ) ),
    introduced(assumption,[]) ).

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

thf(28,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(29,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(30,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(31,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(32,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(33,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h477,h478,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[27,28,29,30,31,32,h14,h15,h398]) ).

thf(h497,assumption,
    ~ ! [X1: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                            ( ( eigen__135 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                           => ( eigen__135 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                       => ~ ! [X2: subst,X3: term,X4: subst,X5: subst] :
                              ( ( eigen__135 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                             => ( eigen__135 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) ) )
                   => ~ ! [X2: term] :
                          ( ( var @ ( sub @ X2 @ id ) )
                         => ( eigen__135 @ id @ X2 @ id ) ) )
               => ~ ! [X2: term,X3: term] :
                      ( ~ ( ( eigen__135 @ id @ X2 @ id )
                         => ~ ( eigen__135 @ id @ X3 @ id ) )
                     => ( eigen__135 @ id @ ( ap @ ( sub @ X2 @ id ) @ X3 ) @ id ) ) )
           => ~ ! [X2: subst > term > term] :
                  ( ~ ( ! [X3: subst,X4: term,X5: subst] :
                          ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                          = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                     => ~ ! [X3: term] :
                            ( ( eigen__135 @ id @ X3 @ id )
                           => ( eigen__135 @ id @ ( X2 @ id @ X3 ) @ id ) ) )
                 => ( eigen__135 @ id @ ( lam @ ( X2 @ sh @ one ) ) @ id ) ) )
       => ( eigen__135 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h498,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                          ( ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                         => ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                            ( ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                           => ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
                 => ~ ! [X1: term] :
                        ( ( var @ ( sub @ X1 @ id ) )
                       => ( eigen__135 @ id @ X1 @ id ) ) )
             => ~ ! [X1: term,X2: term] :
                    ( ~ ( ( eigen__135 @ id @ X1 @ id )
                       => ~ ( eigen__135 @ id @ X2 @ id ) )
                   => ( eigen__135 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) )
         => ~ ! [X1: subst > term > term] :
                ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                        ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                        = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                   => ~ ! [X2: term] :
                          ( ( eigen__135 @ id @ X2 @ id )
                         => ( eigen__135 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
               => ( eigen__135 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) )
     => ( eigen__135 @ id @ eigen__136 @ id ) ),
    introduced(assumption,[]) ).

thf(h499,assumption,
    ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                      ( ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                     => ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                 => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                        ( ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                       => ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
             => ~ ! [X1: term] :
                    ( ( var @ ( sub @ X1 @ id ) )
                   => ( eigen__135 @ id @ X1 @ id ) ) )
         => ~ ! [X1: term,X2: term] :
                ( ~ ( ( eigen__135 @ id @ X1 @ id )
                   => ~ ( eigen__135 @ id @ X2 @ id ) )
               => ( eigen__135 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) )
     => ~ ! [X1: subst > term > term] :
            ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                    ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                    = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
               => ~ ! [X2: term] :
                      ( ( eigen__135 @ id @ X2 @ id )
                     => ( eigen__135 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
           => ( eigen__135 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h500,assumption,
    ~ ( eigen__135 @ id @ eigen__136 @ id ),
    introduced(assumption,[]) ).

thf(h501,assumption,
    ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                  ( ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                 => ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
             => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                    ( ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                   => ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
         => ~ ! [X1: term] :
                ( ( var @ ( sub @ X1 @ id ) )
               => ( eigen__135 @ id @ X1 @ id ) ) )
     => ~ ! [X1: term,X2: term] :
            ( ~ ( ( eigen__135 @ id @ X1 @ id )
               => ~ ( eigen__135 @ id @ X2 @ id ) )
           => ( eigen__135 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h502,assumption,
    ! [X1: subst > term > term] :
      ( ~ ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ~ ! [X2: term] :
                ( ( eigen__135 @ id @ X2 @ id )
               => ( eigen__135 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
     => ( eigen__135 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ),
    introduced(assumption,[]) ).

thf(h503,assumption,
    ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
              ( ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
             => ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
         => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                ( ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
               => ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
     => ~ ! [X1: term] :
            ( ( var @ ( sub @ X1 @ id ) )
           => ( eigen__135 @ id @ X1 @ id ) ) ),
    introduced(assumption,[]) ).

thf(h504,assumption,
    ! [X1: term,X2: term] :
      ( ~ ( ( eigen__135 @ id @ X1 @ id )
         => ~ ( eigen__135 @ id @ X2 @ id ) )
     => ( eigen__135 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h505,assumption,
    ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
          ( ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
         => ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
            ( ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
           => ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) ),
    introduced(assumption,[]) ).

thf(h506,assumption,
    ! [X1: term] :
      ( ( var @ ( sub @ X1 @ id ) )
     => ( eigen__135 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h507,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
     => ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) ),
    introduced(assumption,[]) ).

thf(h508,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__135 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
     => ( eigen__135 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ),
    introduced(assumption,[]) ).

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

thf(35,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(36,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(37,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(38,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(39,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(40,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h507,h508,h505,h506,h503,h504,h501,h502,h499,h500,h498,h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[34,35,36,37,38,39,h14,h15,h398]) ).

thf(41,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h505,h506,h503,h504,h501,h502,h499,h500,h498,h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h507,h508])],[h505,40,h507,h508]) ).

thf(42,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h503,h504,h501,h502,h499,h500,h498,h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h505,h506])],[h503,41,h505,h506]) ).

thf(43,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h501,h502,h499,h500,h498,h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h503,h504])],[h501,42,h503,h504]) ).

thf(44,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h499,h500,h498,h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h501,h502])],[h499,43,h501,h502]) ).

thf(45,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h498,h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h499,h500])],[h498,44,h499,h500]) ).

thf(46,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h497,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h498]),tab_negall(eigenvar,eigen__136)],[h497,45,h498]) ).

thf(47,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h497]),tab_negall(eigenvar,eigen__135)],[h342,46,h497]) ).

thf(48,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h466,h483,h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h374,h342])],[h483,47,h374,h342]) ).

thf(49,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h450,h482,h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h466,h483])],[h482,48,h466,h483]) ).

thf(50,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h336,h481,h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h450,h482])],[h481,49,h450,h482]) ).

thf(51,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h479,h480,h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h336,h481])],[h480,50,h336,h481]) ).

thf(52,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h496,h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h477,h478]),tab_bq(discharge,[h479,h480])],[h17,33,51,h477,h478,h479,h480]) ).

thf(53,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h476,h468,h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h496]),tab_negall(eigenvar,eigen__125)],[h468,52,h496]) ).

thf(54,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h471,h472,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h475,h466]),tab_bq(discharge,[h476,h468])],[h19,26,53,h475,h466,h476,h468]) ).

thf(h509,assumption,
    ~ ! [X1: term > $o,X2: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X3: subst,X4: term,X5: subst,X6: subst] :
                            ( ( eigen__146 @ X3 @ X4 @ ( comp @ X6 @ X5 ) )
                           => ( eigen__146 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 ) )
                       => ~ ! [X3: subst,X4: term,X5: subst,X6: subst] :
                              ( ( eigen__146 @ ( comp @ X3 @ X6 ) @ ( sub @ X4 @ X6 ) @ X5 )
                             => ( eigen__146 @ X3 @ X4 @ ( comp @ X6 @ X5 ) ) ) )
                   => ~ ! [X3: subst > term > term] :
                          ( ~ ( ! [X4: subst,X5: term,X6: subst] :
                                  ( ( sub @ ( X3 @ X4 @ X5 ) @ X6 )
                                  = ( X3 @ ( comp @ X4 @ X6 ) @ ( sub @ X5 @ X6 ) ) )
                             => ~ ! [X4: term] :
                                    ( ( eigen__146 @ id @ X4 @ id )
                                   => ( eigen__146 @ id @ ( X3 @ id @ X4 ) @ id ) ) )
                         => ( eigen__146 @ id @ ( lam @ ( X3 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X3: term] :
                      ( ( X1 @ X3 )
                      = ( eigen__146 @ id @ X3 @ id ) ) )
           => ~ ! [X3: term] :
                  ( ( X1 @ X3 )
                 => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) ) )
       => ( X1 @ ( lam @ X2 ) ) ),
    introduced(assumption,[]) ).

thf(h510,assumption,
    ~ ! [X1: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                            ( ( eigen__146 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                           => ( eigen__146 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                       => ~ ! [X2: subst,X3: term,X4: subst,X5: subst] :
                              ( ( eigen__146 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                             => ( eigen__146 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) ) )
                   => ~ ! [X2: subst > term > term] :
                          ( ~ ( ! [X3: subst,X4: term,X5: subst] :
                                  ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                                  = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                             => ~ ! [X3: term] :
                                    ( ( eigen__146 @ id @ X3 @ id )
                                   => ( eigen__146 @ id @ ( X2 @ id @ X3 ) @ id ) ) )
                         => ( eigen__146 @ id @ ( lam @ ( X2 @ sh @ one ) ) @ id ) ) )
               => ~ ! [X2: term] :
                      ( ( eigen__147 @ X2 )
                      = ( eigen__146 @ id @ X2 @ id ) ) )
           => ~ ! [X2: term] :
                  ( ( eigen__147 @ X2 )
                 => ( eigen__147 @ ( sub @ X1 @ ( push @ X2 @ id ) ) ) ) )
       => ( eigen__147 @ ( lam @ X1 ) ) ),
    introduced(assumption,[]) ).

thf(h511,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                          ( ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                         => ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                            ( ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                           => ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
                 => ~ ! [X1: subst > term > term] :
                        ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                                ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                           => ~ ! [X2: term] :
                                  ( ( eigen__146 @ id @ X2 @ id )
                                 => ( eigen__146 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
                       => ( eigen__146 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) )
             => ~ ! [X1: term] :
                    ( ( eigen__147 @ X1 )
                    = ( eigen__146 @ id @ X1 @ id ) ) )
         => ~ ! [X1: term] :
                ( ( eigen__147 @ X1 )
               => ( eigen__147 @ ( sub @ eigen__148 @ ( push @ X1 @ id ) ) ) ) )
     => ( eigen__147 @ ( lam @ eigen__148 ) ) ),
    introduced(assumption,[]) ).

thf(h512,assumption,
    ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                      ( ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                     => ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                 => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                        ( ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                       => ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
             => ~ ! [X1: subst > term > term] :
                    ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                            ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                            = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                       => ~ ! [X2: term] :
                              ( ( eigen__146 @ id @ X2 @ id )
                             => ( eigen__146 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
                   => ( eigen__146 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) )
         => ~ ! [X1: term] :
                ( ( eigen__147 @ X1 )
                = ( eigen__146 @ id @ X1 @ id ) ) )
     => ~ ! [X1: term] :
            ( ( eigen__147 @ X1 )
           => ( eigen__147 @ ( sub @ eigen__148 @ ( push @ X1 @ id ) ) ) ) ),
    introduced(assumption,[]) ).

thf(h513,assumption,
    ~ ( eigen__147 @ ( lam @ eigen__148 ) ),
    introduced(assumption,[]) ).

thf(h514,assumption,
    ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                  ( ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                 => ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
             => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                    ( ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                   => ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
         => ~ ! [X1: subst > term > term] :
                ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                        ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                        = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                   => ~ ! [X2: term] :
                          ( ( eigen__146 @ id @ X2 @ id )
                         => ( eigen__146 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
               => ( eigen__146 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) )
     => ~ ! [X1: term] :
            ( ( eigen__147 @ X1 )
            = ( eigen__146 @ id @ X1 @ id ) ) ),
    introduced(assumption,[]) ).

thf(h515,assumption,
    ! [X1: term] :
      ( ( eigen__147 @ X1 )
     => ( eigen__147 @ ( sub @ eigen__148 @ ( push @ X1 @ id ) ) ) ),
    introduced(assumption,[]) ).

thf(h516,assumption,
    ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
              ( ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
             => ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
         => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                ( ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
               => ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
     => ~ ! [X1: subst > term > term] :
            ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                    ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                    = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
               => ~ ! [X2: term] :
                      ( ( eigen__146 @ id @ X2 @ id )
                     => ( eigen__146 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
           => ( eigen__146 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h517,assumption,
    ! [X1: term] :
      ( ( eigen__147 @ X1 )
      = ( eigen__146 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h518,assumption,
    ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
          ( ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
         => ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
            ( ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
           => ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) ),
    introduced(assumption,[]) ).

thf(h519,assumption,
    ! [X1: subst > term > term] :
      ( ~ ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ~ ! [X2: term] :
                ( ( eigen__146 @ id @ X2 @ id )
               => ( eigen__146 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
     => ( eigen__146 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ),
    introduced(assumption,[]) ).

thf(h520,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
     => ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) ),
    introduced(assumption,[]) ).

thf(h521,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__146 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
     => ( eigen__146 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ),
    introduced(assumption,[]) ).

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

thf(56,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(57,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(58,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(59,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(60,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(61,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h477,h478,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[55,56,57,58,59,60,h14,h15,h398]) ).

thf(h522,assumption,
    ~ ! [X1: term] :
        ( ~ ( ~ ( ~ ( ~ ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                            ( ( eigen__158 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                           => ( eigen__158 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                       => ~ ! [X2: subst,X3: term,X4: subst,X5: subst] :
                              ( ( eigen__158 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                             => ( eigen__158 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) ) )
                   => ~ ! [X2: term] :
                          ( ( var @ ( sub @ X2 @ id ) )
                         => ( eigen__158 @ id @ X2 @ id ) ) )
               => ~ ! [X2: term,X3: term] :
                      ( ~ ( ( eigen__158 @ id @ X2 @ id )
                         => ~ ( eigen__158 @ id @ X3 @ id ) )
                     => ( eigen__158 @ id @ ( ap @ ( sub @ X2 @ id ) @ X3 ) @ id ) ) )
           => ~ ! [X2: subst > term > term] :
                  ( ~ ( ! [X3: subst,X4: term,X5: subst] :
                          ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                          = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                     => ~ ! [X3: term] :
                            ( ( eigen__158 @ id @ X3 @ id )
                           => ( eigen__158 @ id @ ( X2 @ id @ X3 ) @ id ) ) )
                 => ( eigen__158 @ id @ ( lam @ ( X2 @ sh @ one ) ) @ id ) ) )
       => ( eigen__158 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h523,assumption,
    ~ ( ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                          ( ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                         => ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                            ( ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                           => ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
                 => ~ ! [X1: term] :
                        ( ( var @ ( sub @ X1 @ id ) )
                       => ( eigen__158 @ id @ X1 @ id ) ) )
             => ~ ! [X1: term,X2: term] :
                    ( ~ ( ( eigen__158 @ id @ X1 @ id )
                       => ~ ( eigen__158 @ id @ X2 @ id ) )
                   => ( eigen__158 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) )
         => ~ ! [X1: subst > term > term] :
                ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                        ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                        = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                   => ~ ! [X2: term] :
                          ( ( eigen__158 @ id @ X2 @ id )
                         => ( eigen__158 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
               => ( eigen__158 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) )
     => ( eigen__158 @ id @ eigen__159 @ id ) ),
    introduced(assumption,[]) ).

thf(h524,assumption,
    ~ ( ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                      ( ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                     => ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
                 => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                        ( ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                       => ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
             => ~ ! [X1: term] :
                    ( ( var @ ( sub @ X1 @ id ) )
                   => ( eigen__158 @ id @ X1 @ id ) ) )
         => ~ ! [X1: term,X2: term] :
                ( ~ ( ( eigen__158 @ id @ X1 @ id )
                   => ~ ( eigen__158 @ id @ X2 @ id ) )
               => ( eigen__158 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) )
     => ~ ! [X1: subst > term > term] :
            ( ~ ( ! [X2: subst,X3: term,X4: subst] :
                    ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                    = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
               => ~ ! [X2: term] :
                      ( ( eigen__158 @ id @ X2 @ id )
                     => ( eigen__158 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
           => ( eigen__158 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h525,assumption,
    ~ ( eigen__158 @ id @ eigen__159 @ id ),
    introduced(assumption,[]) ).

thf(h526,assumption,
    ~ ( ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
                  ( ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
                 => ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
             => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                    ( ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
                   => ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
         => ~ ! [X1: term] :
                ( ( var @ ( sub @ X1 @ id ) )
               => ( eigen__158 @ id @ X1 @ id ) ) )
     => ~ ! [X1: term,X2: term] :
            ( ~ ( ( eigen__158 @ id @ X1 @ id )
               => ~ ( eigen__158 @ id @ X2 @ id ) )
           => ( eigen__158 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ) ),
    introduced(assumption,[]) ).

thf(h527,assumption,
    ! [X1: subst > term > term] :
      ( ~ ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ~ ! [X2: term] :
                ( ( eigen__158 @ id @ X2 @ id )
               => ( eigen__158 @ id @ ( X1 @ id @ X2 ) @ id ) ) )
     => ( eigen__158 @ id @ ( lam @ ( X1 @ sh @ one ) ) @ id ) ),
    introduced(assumption,[]) ).

thf(h528,assumption,
    ~ ( ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
              ( ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
             => ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
         => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
                ( ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
               => ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) )
     => ~ ! [X1: term] :
            ( ( var @ ( sub @ X1 @ id ) )
           => ( eigen__158 @ id @ X1 @ id ) ) ),
    introduced(assumption,[]) ).

thf(h529,assumption,
    ! [X1: term,X2: term] :
      ( ~ ( ( eigen__158 @ id @ X1 @ id )
         => ~ ( eigen__158 @ id @ X2 @ id ) )
     => ( eigen__158 @ id @ ( ap @ ( sub @ X1 @ id ) @ X2 ) @ id ) ),
    introduced(assumption,[]) ).

thf(h530,assumption,
    ~ ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
          ( ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
         => ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) )
     => ~ ! [X1: subst,X2: term,X3: subst,X4: subst] :
            ( ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
           => ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ) ),
    introduced(assumption,[]) ).

thf(h531,assumption,
    ! [X1: term] :
      ( ( var @ ( sub @ X1 @ id ) )
     => ( eigen__158 @ id @ X1 @ id ) ),
    introduced(assumption,[]) ).

thf(h532,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) )
     => ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 ) ),
    introduced(assumption,[]) ).

thf(h533,assumption,
    ! [X1: subst,X2: term,X3: subst,X4: subst] :
      ( ( eigen__158 @ ( comp @ X1 @ X4 ) @ ( sub @ X2 @ X4 ) @ X3 )
     => ( eigen__158 @ X1 @ X2 @ ( comp @ X4 @ X3 ) ) ),
    introduced(assumption,[]) ).

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

thf(63,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(64,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(65,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(66,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(67,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(68,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h532,h533,h530,h531,h528,h529,h526,h527,h524,h525,h523,h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[62,63,64,65,66,67,h14,h15,h398]) ).

thf(69,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h530,h531,h528,h529,h526,h527,h524,h525,h523,h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h532,h533])],[h530,68,h532,h533]) ).

thf(70,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h528,h529,h526,h527,h524,h525,h523,h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h530,h531])],[h528,69,h530,h531]) ).

thf(71,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h526,h527,h524,h525,h523,h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h528,h529])],[h526,70,h528,h529]) ).

thf(72,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h524,h525,h523,h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h526,h527])],[h524,71,h526,h527]) ).

thf(73,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h523,h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h524,h525])],[h523,72,h524,h525]) ).

thf(74,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h522,h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h523]),tab_negall(eigenvar,eigen__159)],[h522,73,h523]) ).

thf(75,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h374,h342,h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h522]),tab_negall(eigenvar,eigen__158)],[h342,74,h522]) ).

thf(76,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h466,h483,h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h374,h342])],[h483,75,h374,h342]) ).

thf(77,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h450,h482,h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h466,h483])],[h482,76,h466,h483]) ).

thf(78,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h336,h481,h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h450,h482])],[h481,77,h450,h482]) ).

thf(79,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h479,h480,h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h336,h481])],[h480,78,h336,h481]) ).

thf(80,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h475,h466,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h477,h478]),tab_bq(discharge,[h479,h480])],[h17,61,79,h477,h478,h479,h480]) ).

thf(h534,assumption,
    ( eigen__169
   != ( sub @ eigen__169 @ id ) ),
    introduced(assumption,[]) ).

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

thf(82,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(83,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(84,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(85,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(86,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(87,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h477,h478,h534,h476,h468,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[81,82,83,84,85,86,h14,h15,h398]) ).

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

thf(89,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(90,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(91,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(92,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(93,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(94,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h479,h480,h534,h476,h468,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[88,89,90,91,92,93,h14,h15,h398]) ).

thf(95,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h534,h476,h468,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h477,h478]),tab_bq(discharge,[h479,h480])],[h17,87,94,h477,h478,h479,h480]) ).

thf(96,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h476,h468,h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h534]),tab_negall(eigenvar,eigen__169)],[h468,95,h534]) ).

thf(97,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h520,h521,h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h475,h466]),tab_bq(discharge,[h476,h468])],[h19,80,96,h475,h466,h476,h468]) ).

thf(98,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h518,h519,h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h520,h521])],[h518,97,h520,h521]) ).

thf(99,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h516,h517,h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h518,h519])],[h516,98,h518,h519]) ).

thf(100,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h514,h515,h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h516,h517])],[h514,99,h516,h517]) ).

thf(101,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h512,h513,h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h514,h515])],[h512,100,h514,h515]) ).

thf(102,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h511,h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h512,h513])],[h511,101,h512,h513]) ).

thf(103,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h510,h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h511]),tab_negall(eigenvar,eigen__148)],[h510,102,h511]) ).

thf(104,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h509,h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h510]),tab_negall(eigenvar,eigen__147)],[h509,103,h510]) ).

thf(105,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h466,h460,h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h509]),tab_negall(eigenvar,eigen__146)],[h460,104,h509]) ).

thf(106,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h473,h474,h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h466,h460])],[h474,105,h466,h460]) ).

thf(107,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h469,h410,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h471,h472]),tab_bq(discharge,[h473,h474])],[h21,54,106,h471,h472,h473,h474]) ).

thf(108,plain,
    $false,
    inference(tab_conflict,[status(thm),assumptions([h470,h412,h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[h410,h412]) ).

thf(109,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h465,h466,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h469,h410]),tab_bq(discharge,[h470,h412])],[h25,107,108,h469,h410,h470,h412]) ).

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

thf(111,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(112,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(113,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(114,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(115,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(116,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h467,h468,h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[110,111,112,113,114,115,h14,h15,h398]) ).

thf(117,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h461,h462,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h465,h466]),tab_bq(discharge,[h467,h468])],[h27,109,116,h465,h466,h467,h468]) ).

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

thf(119,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(120,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(121,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(122,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(123,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(124,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h463,h464,h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[118,119,120,121,122,123,h14,h15,h398]) ).

thf(125,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h457,h458,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h461,h462]),tab_bq(discharge,[h463,h464])],[h29,117,124,h461,h462,h463,h464]) ).

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

thf(127,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(128,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(129,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(130,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(131,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(132,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h459,h460,h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[126,127,128,129,130,131,h14,h15,h398]) ).

thf(133,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h453,h454,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h457,h458]),tab_bq(discharge,[h459,h460])],[h31,125,132,h457,h458,h459,h460]) ).

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

thf(135,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(136,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(137,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(138,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(139,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(140,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h455,h456,h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[134,135,136,137,138,139,h14,h15,h398]) ).

thf(141,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h449,h450,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h453,h454]),tab_bq(discharge,[h455,h456])],[h33,133,140,h453,h454,h455,h456]) ).

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

thf(143,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(144,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(145,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(146,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(147,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(148,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h451,h452,h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[142,143,144,145,146,147,h14,h15,h398]) ).

thf(149,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h445,h446,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h449,h450]),tab_bq(discharge,[h451,h452])],[h38,141,148,h449,h450,h451,h452]) ).

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

thf(151,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(152,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(153,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(154,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(155,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(156,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h447,h448,h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[150,151,152,153,154,155,h14,h15,h398]) ).

thf(157,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h441,h442,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h445,h446]),tab_bq(discharge,[h447,h448])],[h44,149,156,h445,h446,h447,h448]) ).

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

thf(159,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(160,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(161,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(162,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(163,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(164,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h443,h444,h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[158,159,160,161,162,163,h14,h15,h398]) ).

thf(165,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h437,h438,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h441,h442]),tab_bq(discharge,[h443,h444])],[h52,157,164,h441,h442,h443,h444]) ).

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

thf(167,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(168,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(169,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(170,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(171,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(172,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h439,h440,h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[166,167,168,169,170,171,h14,h15,h398]) ).

thf(173,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h418,h394,h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h437,h438]),tab_bq(discharge,[h439,h440])],[h56,165,172,h437,h438,h439,h440]) ).

thf(174,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h433,h434,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h418,h394])],[h434,173,h418,h394]) ).

thf(175,plain,
    ( ~ sP11
    | ~ sP4
    | ~ sP17 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(176,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h435,h436,h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[175,h394,h418,h436]) ).

thf(177,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h431,h344,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h433,h434]),tab_bq(discharge,[h435,h436])],[h60,174,176,h433,h434,h435,h436]) ).

thf(178,plain,
    $false,
    inference(tab_conflict,[status(thm),assumptions([h432,h346,h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[h344,h346]) ).

thf(179,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h427,h428,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h431,h344]),tab_bq(discharge,[h432,h346])],[h62,177,178,h431,h344,h432,h346]) ).

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

thf(181,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(182,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(183,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(184,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(185,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(186,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h429,h430,h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[180,181,182,183,184,185,h14,h15,h398]) ).

thf(187,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h425,h336,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h427,h428]),tab_bq(discharge,[h429,h430])],[h70,179,186,h427,h428,h429,h430]) ).

thf(188,plain,
    $false,
    inference(tab_conflict,[status(thm),assumptions([h426,h338,h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[h336,h338]) ).

thf(189,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h421,h422,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h425,h336]),tab_bq(discharge,[h426,h338])],[h72,187,188,h425,h336,h426,h338]) ).

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

thf(191,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(192,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(193,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(194,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(195,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(196,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h423,h424,h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[190,191,192,193,194,195,h14,h15,h398]) ).

thf(197,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h417,h418,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h421,h422]),tab_bq(discharge,[h423,h424])],[h74,189,196,h421,h422,h423,h424]) ).

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

thf(199,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(200,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(201,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(202,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(203,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(204,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h419,h420,h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[198,199,200,201,202,203,h14,h15,h398]) ).

thf(205,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h413,h414,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h417,h418]),tab_bq(discharge,[h419,h420])],[h78,197,204,h417,h418,h419,h420]) ).

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

thf(207,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(208,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(209,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(210,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(211,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(212,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h415,h416,h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[206,207,208,209,210,211,h14,h15,h398]) ).

thf(213,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h409,h410,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h413,h414]),tab_bq(discharge,[h415,h416])],[h92,205,212,h413,h414,h415,h416]) ).

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

thf(215,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(216,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(217,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(218,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(219,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(220,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h411,h412,h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[214,215,216,217,218,219,h14,h15,h398]) ).

thf(221,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h405,h406,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h409,h410]),tab_bq(discharge,[h411,h412])],[h98,213,220,h409,h410,h411,h412]) ).

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

thf(223,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(224,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(225,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(226,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(227,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(228,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h407,h408,h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[222,223,224,225,226,227,h14,h15,h398]) ).

thf(229,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h401,h402,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h405,h406]),tab_bq(discharge,[h407,h408])],[h100,221,228,h405,h406,h407,h408]) ).

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

thf(231,plain,
    ( ~ sP37
    | sP31 ),
    inference(all_rule,[status(thm)],[]) ).

thf(232,plain,
    ( ~ sP25
    | sP37 ),
    inference(all_rule,[status(thm)],[]) ).

thf(233,plain,
    ( ~ sP19
    | sP25 ),
    inference(all_rule,[status(thm)],[]) ).

thf(234,plain,
    ( ~ sP8
    | sP19 ),
    inference(all_rule,[status(thm)],[]) ).

thf(235,plain,
    ( ~ sP12
    | sP8 ),
    inference(all_rule,[status(thm)],[]) ).

thf(236,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h403,h404,h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[230,231,232,233,234,235,h14,h15,h398]) ).

thf(237,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h397,h398,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h401,h402]),tab_bq(discharge,[h403,h404])],[h102,229,236,h401,h402,h403,h404]) ).

thf(238,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(239,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(240,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(241,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(242,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(243,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(244,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(245,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(246,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(247,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(248,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(249,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(250,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(251,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h399,h400,h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[238,239,240,241,242,243,244,245,246,247,248,249,250,h9,h11,h14,h15,h236]) ).

thf(252,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h393,h394,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h397,h398]),tab_bq(discharge,[h399,h400])],[h104,237,251,h397,h398,h399,h400]) ).

thf(253,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(254,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(255,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(256,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(257,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(258,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(259,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(260,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(261,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(262,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(263,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(264,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(265,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(266,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h395,h396,h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[253,254,255,256,257,258,259,260,261,262,263,264,265,h9,h11,h14,h15,h236]) ).

thf(267,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h389,h390,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h393,h394]),tab_bq(discharge,[h395,h396])],[h106,252,266,h393,h394,h395,h396]) ).

thf(268,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(269,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(270,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(271,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(272,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(273,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(274,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(275,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(276,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(277,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(278,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(279,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(280,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(281,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h391,h392,h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[268,269,270,271,272,273,274,275,276,277,278,279,280,h9,h11,h14,h15,h236]) ).

thf(282,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h385,h386,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h389,h390]),tab_bq(discharge,[h391,h392])],[h110,267,281,h389,h390,h391,h392]) ).

thf(283,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(284,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(285,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(286,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(287,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(288,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(289,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(290,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(291,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(292,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(293,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(294,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(295,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(296,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h387,h388,h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[283,284,285,286,287,288,289,290,291,292,293,294,295,h9,h11,h14,h15,h236]) ).

thf(297,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h381,h382,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h385,h386]),tab_bq(discharge,[h387,h388])],[h112,282,296,h385,h386,h387,h388]) ).

thf(298,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(299,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(300,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(301,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(302,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(303,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(304,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(305,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(306,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(307,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(308,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(309,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(310,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(311,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h383,h384,h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[298,299,300,301,302,303,304,305,306,307,308,309,310,h9,h11,h14,h15,h236]) ).

thf(312,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h377,h378,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h381,h382]),tab_bq(discharge,[h383,h384])],[h114,297,311,h381,h382,h383,h384]) ).

thf(313,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(314,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(315,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(316,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(317,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(318,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(319,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(320,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(321,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(322,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(323,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(324,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(325,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(326,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h379,h380,h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[313,314,315,316,317,318,319,320,321,322,323,324,325,h9,h11,h14,h15,h236]) ).

thf(327,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h373,h374,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h377,h378]),tab_bq(discharge,[h379,h380])],[h116,312,326,h377,h378,h379,h380]) ).

thf(328,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(329,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(330,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(331,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(332,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(333,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(334,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(335,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(336,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(337,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(338,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(339,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(340,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(341,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h375,h376,h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[328,329,330,331,332,333,334,335,336,337,338,339,340,h9,h11,h14,h15,h236]) ).

thf(342,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h369,h370,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h373,h374]),tab_bq(discharge,[h375,h376])],[h118,327,341,h373,h374,h375,h376]) ).

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

thf(344,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h371,h372,h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[343,h286,h372]) ).

thf(345,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h365,h366,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h369,h370]),tab_bq(discharge,[h371,h372])],[h120,342,344,h369,h370,h371,h372]) ).

thf(346,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(347,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(348,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(349,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(350,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(351,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(352,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(353,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(354,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(355,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(356,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(357,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(358,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(359,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h367,h368,h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[346,347,348,349,350,351,352,353,354,355,356,357,358,h9,h11,h14,h15,h236]) ).

thf(360,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h361,h362,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h365,h366]),tab_bq(discharge,[h367,h368])],[h122,345,359,h365,h366,h367,h368]) ).

thf(361,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(362,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(363,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(364,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(365,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(366,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(367,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(368,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(369,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(370,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(371,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(372,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(373,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(374,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h363,h364,h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[361,362,363,364,365,366,367,368,369,370,371,372,373,h9,h11,h14,h15,h236]) ).

thf(375,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h357,h358,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h361,h362]),tab_bq(discharge,[h363,h364])],[h124,360,374,h361,h362,h363,h364]) ).

thf(376,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(377,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(378,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(379,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(380,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(381,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(382,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(383,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(384,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(385,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(386,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(387,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(388,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(389,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h359,h360,h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[376,377,378,379,380,381,382,383,384,385,386,387,388,h9,h11,h14,h15,h236]) ).

thf(390,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h355,h316,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h357,h358]),tab_bq(discharge,[h359,h360])],[h128,375,389,h357,h358,h359,h360]) ).

thf(391,plain,
    $false,
    inference(tab_conflict,[status(thm),assumptions([h356,h318,h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[h316,h318]) ).

thf(392,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h351,h352,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h355,h316]),tab_bq(discharge,[h356,h318])],[h146,390,391,h355,h316,h356,h318]) ).

thf(393,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(394,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(395,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(396,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(397,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(398,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(399,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(400,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(401,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(402,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(403,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(404,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(405,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(406,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h353,h354,h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[393,394,395,396,397,398,399,400,401,402,403,404,405,h9,h11,h14,h15,h236]) ).

thf(407,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h347,h348,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h351,h352]),tab_bq(discharge,[h353,h354])],[h150,392,406,h351,h352,h353,h354]) ).

thf(408,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(409,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(410,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(411,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(412,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(413,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(414,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(415,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(416,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(417,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(418,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(419,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(420,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(421,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h349,h350,h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[408,409,410,411,412,413,414,415,416,417,418,419,420,h9,h11,h14,h15,h236]) ).

thf(422,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h343,h344,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h347,h348]),tab_bq(discharge,[h349,h350])],[h152,407,421,h347,h348,h349,h350]) ).

thf(423,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(424,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(425,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(426,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(427,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(428,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(429,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(430,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(431,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(432,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(433,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(434,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(435,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(436,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h345,h346,h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[423,424,425,426,427,428,429,430,431,432,433,434,435,h9,h11,h14,h15,h236]) ).

thf(437,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h339,h340,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h343,h344]),tab_bq(discharge,[h345,h346])],[h156,422,436,h343,h344,h345,h346]) ).

thf(438,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(439,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(440,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(441,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(442,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(443,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(444,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(445,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(446,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(447,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(448,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(449,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(450,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(451,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h341,h342,h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[438,439,440,441,442,443,444,445,446,447,448,449,450,h9,h11,h14,h15,h236]) ).

thf(452,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h335,h336,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h339,h340]),tab_bq(discharge,[h341,h342])],[h166,437,451,h339,h340,h341,h342]) ).

thf(453,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(454,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(455,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(456,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(457,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(458,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(459,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(460,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(461,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(462,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(463,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(464,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(465,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(466,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h337,h338,h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[453,454,455,456,457,458,459,460,461,462,463,464,465,h9,h11,h14,h15,h236]) ).

thf(467,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h331,h332,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h335,h336]),tab_bq(discharge,[h337,h338])],[h168,452,466,h335,h336,h337,h338]) ).

thf(468,plain,
    ( sP20
    | ~ sP34 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(469,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h333,h334,h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[468,h270,h334]) ).

thf(470,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h327,h328,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h331,h332]),tab_bq(discharge,[h333,h334])],[h172,467,469,h331,h332,h333,h334]) ).

thf(471,plain,
    ~ sP33,
    inference(prop_rule,[status(thm)],[]) ).

thf(472,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h329,h330,h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[471,h330]) ).

thf(473,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h323,h324,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h327,h328]),tab_bq(discharge,[h329,h330])],[h178,470,472,h327,h328,h329,h330]) ).

thf(474,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(475,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(476,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(477,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(478,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(479,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(480,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(481,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(482,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(483,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(484,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(485,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(486,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(487,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h325,h326,h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[474,475,476,477,478,479,480,481,482,483,484,485,486,h9,h11,h14,h15,h236]) ).

thf(488,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h319,h320,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h323,h324]),tab_bq(discharge,[h325,h326])],[h180,473,487,h323,h324,h325,h326]) ).

thf(489,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(490,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(491,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(492,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(493,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(494,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(495,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(496,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(497,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(498,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(499,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(500,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(501,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(502,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h321,h322,h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[489,490,491,492,493,494,495,496,497,498,499,500,501,h9,h11,h14,h15,h236]) ).

thf(503,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h315,h316,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h319,h320]),tab_bq(discharge,[h321,h322])],[h182,488,502,h319,h320,h321,h322]) ).

thf(504,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(505,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(506,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(507,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(508,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(509,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(510,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(511,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(512,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(513,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(514,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(515,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(516,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(517,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h317,h318,h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[504,505,506,507,508,509,510,511,512,513,514,515,516,h9,h11,h14,h15,h236]) ).

thf(518,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h311,h312,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h315,h316]),tab_bq(discharge,[h317,h318])],[h184,503,517,h315,h316,h317,h318]) ).

thf(519,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(520,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(521,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(522,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(523,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(524,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(525,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(526,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(527,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(528,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(529,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(530,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(531,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(532,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h313,h314,h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[519,520,521,522,523,524,525,526,527,528,529,530,531,h9,h11,h14,h15,h236]) ).

thf(533,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h307,h308,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h311,h312]),tab_bq(discharge,[h313,h314])],[h188,518,532,h311,h312,h313,h314]) ).

thf(534,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(535,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(536,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(537,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(538,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(539,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(540,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(541,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(542,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(543,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(544,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(545,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(546,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(547,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h309,h310,h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[534,535,536,537,538,539,540,541,542,543,544,545,546,h9,h11,h14,h15,h236]) ).

thf(548,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h303,h304,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h307,h308]),tab_bq(discharge,[h309,h310])],[h190,533,547,h307,h308,h309,h310]) ).

thf(549,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(550,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(551,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(552,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(553,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(554,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(555,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(556,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(557,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(558,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(559,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(560,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(561,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(562,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h305,h306,h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[549,550,551,552,553,554,555,556,557,558,559,560,561,h9,h11,h14,h15,h236]) ).

thf(563,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h299,h300,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h303,h304]),tab_bq(discharge,[h305,h306])],[h192,548,562,h303,h304,h305,h306]) ).

thf(564,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(565,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(566,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(567,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(568,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(569,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(570,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(571,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(572,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(573,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(574,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(575,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(576,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(577,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h301,h302,h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[564,565,566,567,568,569,570,571,572,573,574,575,576,h9,h11,h14,h15,h236]) ).

thf(578,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h297,h282,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h299,h300]),tab_bq(discharge,[h301,h302])],[h194,563,577,h299,h300,h301,h302]) ).

thf(579,plain,
    $false,
    inference(tab_conflict,[status(thm),assumptions([h298,h284,h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[h282,h284]) ).

thf(580,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h293,h294,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h297,h282]),tab_bq(discharge,[h298,h284])],[h196,578,579,h297,h282,h298,h284]) ).

thf(581,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(582,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(583,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(584,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(585,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(586,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(587,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(588,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(589,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(590,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(591,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(592,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(593,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(594,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h295,h296,h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[581,582,583,584,585,586,587,588,589,590,591,592,593,h9,h11,h14,h15,h236]) ).

thf(595,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h289,h290,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h293,h294]),tab_bq(discharge,[h295,h296])],[h204,580,594,h293,h294,h295,h296]) ).

thf(596,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(597,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(598,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(599,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(600,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(601,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(602,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(603,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(604,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(605,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(606,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(607,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(608,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(609,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h291,h292,h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[596,597,598,599,600,601,602,603,604,605,606,607,608,h9,h11,h14,h15,h236]) ).

thf(610,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h285,h286,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h289,h290]),tab_bq(discharge,[h291,h292])],[h208,595,609,h289,h290,h291,h292]) ).

thf(611,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(612,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(613,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(614,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(615,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(616,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(617,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(618,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(619,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(620,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(621,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(622,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(623,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(624,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h287,h288,h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[611,612,613,614,615,616,617,618,619,620,621,622,623,h9,h11,h14,h15,h236]) ).

thf(625,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h281,h282,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h285,h286]),tab_bq(discharge,[h287,h288])],[h212,610,624,h285,h286,h287,h288]) ).

thf(626,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(627,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(628,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(629,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(630,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(631,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(632,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(633,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(634,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(635,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(636,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(637,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(638,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(639,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h283,h284,h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[626,627,628,629,630,631,632,633,634,635,636,637,638,h9,h11,h14,h15,h236]) ).

thf(640,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h277,h278,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h281,h282]),tab_bq(discharge,[h283,h284])],[h216,625,639,h281,h282,h283,h284]) ).

thf(641,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(642,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(643,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(644,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(645,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(646,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(647,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(648,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(649,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(650,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(651,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(652,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(653,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(654,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h279,h280,h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[641,642,643,644,645,646,647,648,649,650,651,652,653,h9,h11,h14,h15,h236]) ).

thf(655,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h273,h274,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h277,h278]),tab_bq(discharge,[h279,h280])],[h218,640,654,h277,h278,h279,h280]) ).

thf(656,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(657,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(658,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(659,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(660,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(661,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(662,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(663,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(664,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(665,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(666,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(667,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(668,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(669,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h275,h276,h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[656,657,658,659,660,661,662,663,664,665,666,667,668,h9,h11,h14,h15,h236]) ).

thf(670,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h269,h270,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h273,h274]),tab_bq(discharge,[h275,h276])],[h224,655,669,h273,h274,h275,h276]) ).

thf(671,plain,
    ( ~ sP39
    | ~ sP16
    | sP6 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(672,plain,
    ( ~ sP21
    | sP39 ),
    inference(all_rule,[status(thm)],[]) ).

thf(673,plain,
    ( ~ sP48
    | ~ sP44
    | sP21 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(674,plain,
    ( ~ sP24
    | sP48 ),
    inference(all_rule,[status(thm)],[]) ).

thf(675,plain,
    ( ~ sP45
    | sP24 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(676,plain,
    ( ~ sP42
    | sP45 ),
    inference(all_rule,[status(thm)],[]) ).

thf(677,plain,
    ( ~ sP2
    | sP42 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(678,plain,
    ( ~ sP3
    | sP2 ),
    inference(all_rule,[status(thm)],[]) ).

thf(679,plain,
    ( ~ sP30
    | sP3 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(680,plain,
    ( ~ sP46
    | sP30 ),
    inference(all_rule,[status(thm)],[]) ).

thf(681,plain,
    ( ~ sP36
    | sP46 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(682,plain,
    ( ~ sP35
    | ~ sP18
    | sP16 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(683,plain,
    ( ~ sP1
    | sP35 ),
    inference(all_rule,[status(thm)],[]) ).

thf(684,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h271,h272,h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0])],[671,672,673,674,675,676,677,678,679,680,681,682,683,h9,h11,h14,h15,h236]) ).

thf(685,plain,
    $false,
    inference(tab_bq,[status(thm),assumptions([h267,h268,h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_bq(discharge,[h269,h270]),tab_bq(discharge,[h271,h272])],[h232,670,684,h269,h270,h271,h272]) ).

thf(686,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h265,h266,h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h267,h268])],[h265,685,h267,h268]) ).

thf(687,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h263,h264,h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h265,h266])],[h263,686,h265,h266]) ).

thf(688,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h261,h262,h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h263,h264])],[h261,687,h263,h264]) ).

thf(689,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h259,h260,h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h261,h262])],[h259,688,h261,h262]) ).

thf(690,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h257,h258,h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h259,h260])],[h257,689,h259,h260]) ).

thf(691,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h255,h256,h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h257,h258])],[h255,690,h257,h258]) ).

thf(692,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h253,h254,h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h255,h256])],[h253,691,h255,h256]) ).

thf(693,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h251,h252,h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h253,h254])],[h251,692,h253,h254]) ).

thf(694,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h249,h250,h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h251,h252])],[h249,693,h251,h252]) ).

thf(695,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h247,h248,h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h249,h250])],[h247,694,h249,h250]) ).

thf(696,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h245,h246,h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h247,h248])],[h245,695,h247,h248]) ).

thf(697,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h243,h244,h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h245,h246])],[h243,696,h245,h246]) ).

thf(698,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h241,h242,h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h243,h244])],[h241,697,h243,h244]) ).

thf(699,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h239,h240,h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h241,h242])],[h239,698,h241,h242]) ).

thf(700,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h237,h238,h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h239,h240])],[h237,699,h239,h240]) ).

thf(701,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h235,h236,h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h237,h238])],[h235,700,h237,h238]) ).

thf(702,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h233,h234,h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h235,h236])],[h233,701,h235,h236]) ).

thf(703,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h231,h232,h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h233,h234])],[h231,702,h233,h234]) ).

thf(704,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h229,h230,h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h231,h232])],[h229,703,h231,h232]) ).

thf(705,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h227,h228,h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h229,h230])],[h227,704,h229,h230]) ).

thf(706,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h225,h226,h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h227,h228])],[h225,705,h227,h228]) ).

thf(707,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h223,h224,h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h225,h226])],[h223,706,h225,h226]) ).

thf(708,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h221,h222,h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h223,h224])],[h221,707,h223,h224]) ).

thf(709,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h219,h220,h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h221,h222])],[h219,708,h221,h222]) ).

thf(710,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h217,h218,h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h219,h220])],[h217,709,h219,h220]) ).

thf(711,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h215,h216,h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h217,h218])],[h215,710,h217,h218]) ).

thf(712,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h213,h214,h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h215,h216])],[h213,711,h215,h216]) ).

thf(713,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h211,h212,h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h213,h214])],[h211,712,h213,h214]) ).

thf(714,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h209,h210,h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h211,h212])],[h209,713,h211,h212]) ).

thf(715,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h207,h208,h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h209,h210])],[h207,714,h209,h210]) ).

thf(716,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h205,h206,h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h207,h208])],[h205,715,h207,h208]) ).

thf(717,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h203,h204,h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h205,h206])],[h203,716,h205,h206]) ).

thf(718,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h201,h202,h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h203,h204])],[h201,717,h203,h204]) ).

thf(719,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h199,h200,h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h201,h202])],[h199,718,h201,h202]) ).

thf(720,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h197,h198,h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h199,h200])],[h197,719,h199,h200]) ).

thf(721,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h195,h196,h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h197,h198])],[h195,720,h197,h198]) ).

thf(722,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h193,h194,h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h195,h196])],[h193,721,h195,h196]) ).

thf(723,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h191,h192,h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h193,h194])],[h191,722,h193,h194]) ).

thf(724,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h189,h190,h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h191,h192])],[h189,723,h191,h192]) ).

thf(725,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h187,h188,h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h189,h190])],[h187,724,h189,h190]) ).

thf(726,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h185,h186,h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h187,h188])],[h185,725,h187,h188]) ).

thf(727,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h183,h184,h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h185,h186])],[h183,726,h185,h186]) ).

thf(728,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h181,h182,h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h183,h184])],[h181,727,h183,h184]) ).

thf(729,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h179,h180,h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h181,h182])],[h179,728,h181,h182]) ).

thf(730,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h177,h178,h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h179,h180])],[h177,729,h179,h180]) ).

thf(731,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h175,h176,h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h177,h178])],[h175,730,h177,h178]) ).

thf(732,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h173,h174,h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h175,h176])],[h173,731,h175,h176]) ).

thf(733,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h171,h172,h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h173,h174])],[h171,732,h173,h174]) ).

thf(734,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h169,h170,h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h171,h172])],[h169,733,h171,h172]) ).

thf(735,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h167,h168,h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h169,h170])],[h167,734,h169,h170]) ).

thf(736,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h165,h166,h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h167,h168])],[h165,735,h167,h168]) ).

thf(737,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h163,h164,h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h165,h166])],[h163,736,h165,h166]) ).

thf(738,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h161,h162,h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h163,h164])],[h161,737,h163,h164]) ).

thf(739,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h159,h160,h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h161,h162])],[h159,738,h161,h162]) ).

thf(740,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h157,h158,h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h159,h160])],[h157,739,h159,h160]) ).

thf(741,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h155,h156,h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h157,h158])],[h155,740,h157,h158]) ).

thf(742,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h153,h154,h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h155,h156])],[h153,741,h155,h156]) ).

thf(743,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h151,h152,h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h153,h154])],[h151,742,h153,h154]) ).

thf(744,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h149,h150,h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h151,h152])],[h149,743,h151,h152]) ).

thf(745,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h147,h148,h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h149,h150])],[h147,744,h149,h150]) ).

thf(746,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h145,h146,h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h147,h148])],[h145,745,h147,h148]) ).

thf(747,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h143,h144,h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h145,h146])],[h143,746,h145,h146]) ).

thf(748,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h141,h142,h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h143,h144])],[h141,747,h143,h144]) ).

thf(749,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h139,h140,h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h141,h142])],[h139,748,h141,h142]) ).

thf(750,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h137,h138,h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h139,h140])],[h137,749,h139,h140]) ).

thf(751,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h135,h136,h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h137,h138])],[h135,750,h137,h138]) ).

thf(752,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h133,h134,h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h135,h136])],[h133,751,h135,h136]) ).

thf(753,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h131,h132,h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h133,h134])],[h131,752,h133,h134]) ).

thf(754,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h129,h130,h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h131,h132])],[h129,753,h131,h132]) ).

thf(755,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h127,h128,h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h129,h130])],[h127,754,h129,h130]) ).

thf(756,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h125,h126,h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h127,h128])],[h125,755,h127,h128]) ).

thf(757,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h123,h124,h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h125,h126])],[h123,756,h125,h126]) ).

thf(758,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h121,h122,h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h123,h124])],[h121,757,h123,h124]) ).

thf(759,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h119,h120,h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h121,h122])],[h119,758,h121,h122]) ).

thf(760,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h117,h118,h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h119,h120])],[h117,759,h119,h120]) ).

thf(761,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h115,h116,h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h117,h118])],[h115,760,h117,h118]) ).

thf(762,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h113,h114,h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h115,h116])],[h113,761,h115,h116]) ).

thf(763,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h111,h112,h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h113,h114])],[h111,762,h113,h114]) ).

thf(764,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h109,h110,h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h111,h112])],[h109,763,h111,h112]) ).

thf(765,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h107,h108,h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h109,h110])],[h107,764,h109,h110]) ).

thf(766,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h105,h106,h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h107,h108])],[h105,765,h107,h108]) ).

thf(767,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h103,h104,h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h105,h106])],[h103,766,h105,h106]) ).

thf(768,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h101,h102,h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h103,h104])],[h101,767,h103,h104]) ).

thf(769,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h99,h100,h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h101,h102])],[h99,768,h101,h102]) ).

thf(770,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h97,h98,h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h99,h100])],[h97,769,h99,h100]) ).

thf(771,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h95,h96,h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h97,h98])],[h95,770,h97,h98]) ).

thf(772,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h93,h94,h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h95,h96])],[h93,771,h95,h96]) ).

thf(773,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h91,h92,h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h93,h94])],[h91,772,h93,h94]) ).

thf(774,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h89,h90,h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h91,h92])],[h89,773,h91,h92]) ).

thf(775,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h87,h88,h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h89,h90])],[h87,774,h89,h90]) ).

thf(776,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h85,h86,h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h87,h88])],[h85,775,h87,h88]) ).

thf(777,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h83,h84,h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h85,h86])],[h83,776,h85,h86]) ).

thf(778,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h81,h82,h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h83,h84])],[h81,777,h83,h84]) ).

thf(779,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h79,h80,h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h81,h82])],[h79,778,h81,h82]) ).

thf(780,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h77,h78,h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h79,h80])],[h77,779,h79,h80]) ).

thf(781,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h75,h76,h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h77,h78])],[h75,780,h77,h78]) ).

thf(782,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h73,h74,h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h75,h76])],[h73,781,h75,h76]) ).

thf(783,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h71,h72,h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h73,h74])],[h71,782,h73,h74]) ).

thf(784,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h69,h70,h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h71,h72])],[h69,783,h71,h72]) ).

thf(785,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h67,h68,h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h69,h70])],[h67,784,h69,h70]) ).

thf(786,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h65,h66,h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h67,h68])],[h65,785,h67,h68]) ).

thf(787,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h63,h64,h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h65,h66])],[h63,786,h65,h66]) ).

thf(788,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h61,h62,h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h63,h64])],[h61,787,h63,h64]) ).

thf(789,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h59,h60,h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h61,h62])],[h59,788,h61,h62]) ).

thf(790,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h57,h58,h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h59,h60])],[h57,789,h59,h60]) ).

thf(791,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h55,h56,h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h57,h58])],[h55,790,h57,h58]) ).

thf(792,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h53,h54,h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h55,h56])],[h53,791,h55,h56]) ).

thf(793,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h51,h52,h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h53,h54])],[h51,792,h53,h54]) ).

thf(794,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h49,h50,h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h51,h52])],[h49,793,h51,h52]) ).

thf(795,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h47,h48,h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h49,h50])],[h47,794,h49,h50]) ).

thf(796,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h45,h46,h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h47,h48])],[h45,795,h47,h48]) ).

thf(797,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h43,h44,h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h45,h46])],[h43,796,h45,h46]) ).

thf(798,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h41,h42,h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h43,h44])],[h41,797,h43,h44]) ).

thf(799,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h39,h40,h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h41,h42])],[h39,798,h41,h42]) ).

thf(800,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h37,h38,h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h39,h40])],[h37,799,h39,h40]) ).

thf(801,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h36,h1,h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h37,h38])],[h36,800,h37,h38]) ).

thf(802,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h34,h35,h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h36,h1])],[h34,801,h36,h1]) ).

thf(803,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h32,h33,h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h34,h35])],[h32,802,h34,h35]) ).

thf(804,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h30,h31,h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h32,h33])],[h30,803,h32,h33]) ).

thf(805,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h28,h29,h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h30,h31])],[h28,804,h30,h31]) ).

thf(806,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h26,h27,h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h28,h29])],[h26,805,h28,h29]) ).

thf(807,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h24,h25,h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h26,h27])],[h24,806,h26,h27]) ).

thf(808,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h22,h23,h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h24,h25])],[h22,807,h24,h25]) ).

thf(809,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h20,h21,h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h22,h23])],[h20,808,h22,h23]) ).

thf(810,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h18,h19,h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h20,h21])],[h18,809,h20,h21]) ).

thf(811,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h16,h17,h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h18,h19])],[h16,810,h18,h19]) ).

thf(alg444_1,axiom,
    ~ sP23 ).

thf(812,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h14,h15,h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h16,h17])],[alg444_1,811,h16,h17]) ).

thf(813,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h13,h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h14,h15])],[h13,812,h14,h15]) ).

thf(814,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h11,h12,h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h13]),tab_negall(eigenvar,eigen__4)],[h12,813,h13]) ).

thf(815,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h9,h10,h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h11,h12])],[h10,814,h11,h12]) ).

thf(816,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h8,h7,h6,h5,h1,h2,h0]),tab_negimp(discharge,[h9,h10])],[h8,815,h9,h10]) ).

thf(817,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h7,h6,h5,h1,h2,h0]),tab_negall(discharge,[h8]),tab_negall(eigenvar,eigen__3)],[h7,816,h8]) ).

thf(818,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h6,h5,h1,h2,h0]),tab_negall(discharge,[h7]),tab_negall(eigenvar,eigen__2)],[h6,817,h7]) ).

thf(819,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h5,h1,h2,h0]),tab_negall(discharge,[h6]),tab_negall(eigenvar,eigen__1)],[h5,818,h6]) ).

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

thf(821,plain,
    ( sP38
    | sP47 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(822,plain,
    ( sP15
    | ~ sP38 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(823,plain,
    ( sP5
    | ~ sP15 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(824,plain,
    ( sP27
    | ~ sP5 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(825,plain,
    ( sP13
    | ~ sP27 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(826,plain,
    ( sP32
    | ~ sP13 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(827,plain,
    ( sP28
    | ~ sP32 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(828,plain,
    ( sP29
    | ~ sP28 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(829,plain,
    ( sP7
    | ~ sP29 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(830,plain,
    ( sP14
    | ~ sP7 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(831,plain,
    ( sP23
    | ~ sP14 ),
    inference(prop_rule,[status(thm)],[]) ).

thf(832,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h3,h4,h0])],[821,822,823,824,825,826,827,828,829,830,831,alg444_1,h3]) ).

thf(833,plain,
    $false,
    inference(tab_be,[status(thm),assumptions([h0]),tab_be(discharge,[h1,h2]),tab_be(discharge,[h3,h4])],[h0,820,832,h1,h2,h3,h4]) ).

thf(0,theorem,
    ( sP47
    = ( ! [X1: term > $o,X2: term > $o,X3: term,X4: subst] :
          ( ( pushprop_p_and_p_prime @ X3 @ X4 @ X1 @ X2 )
         => ( ! [X5: term] :
                ( ( var @ X5 )
               => ( X2 @ X5 ) )
           => ! [X5: term] :
                ( ( var @ X5 )
               => ( X1 @ ( sub @ X5 @ ( push @ X3 @ X4 ) ) ) ) ) ) ) ),
    inference(contra,[status(thm),contra(discharge,[h0])],[833,h0]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11  % Problem  : SWX153_1 : TPTP v9.3.0. Released v9.3.0.
% 0.00/0.12  % Command  : lash -P picomus -M modes -p tstp -t %d %s
% 0.15/0.33  % Computer : n016.cluster.edu
% 0.15/0.33  % Model    : x86_64 x86_64
% 0.15/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.33  % Memory   : 8042.1875MB
% 0.15/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.15/0.33  % CPULimit : 300
% 0.15/0.33  % WCLimit  : 300
% 0.15/0.33  % DateTime : Tue May  5 09:01:36 EDT 2026
% 0.15/0.33  % CPUTime  : 
% 12.06/12.09  % SZS status Theorem
% 12.06/12.09  % Mode: cade22grackle2xfee4
% 12.06/12.09  % Steps: 157428
% 12.06/12.09  % SZS output start Proof
% See solution above
%------------------------------------------------------------------------------